@stll/ui 0.26.3 → 0.26.4
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/calendar/primitives.d.ts +7 -8
- package/dist/calendar/resource-calendar.d.ts +6 -7
- package/dist/calendar/resource-calendar.logic.d.ts +9 -10
- package/dist/components/application-rail.d.ts +11 -12
- package/dist/components/bidi-text.d.ts +3 -3
- package/dist/components/brand-icons.d.ts +3 -4
- package/dist/components/button-variants.d.ts +5 -6
- package/dist/components/command.d.ts +1 -1
- package/dist/components/composer.d.ts +18 -19
- package/dist/components/context-menu.d.ts +4 -5
- package/dist/components/date-picker-popover.js +20 -18
- package/dist/components/date-picker-popover.logic.d.ts +6 -7
- package/dist/components/dialog.d.ts +1 -1
- package/dist/components/directional-icon.d.ts +2 -3
- package/dist/components/input-control.d.ts +4 -5
- package/dist/components/input-group.d.ts +1 -1
- package/dist/components/landing.d.ts +10 -11
- package/dist/components/menu.d.ts +1 -1
- package/dist/components/outline-rail.d.ts +4 -5
- package/dist/components/preview-card.d.ts +4 -4
- package/dist/components/scroll-to-top.d.ts +3 -4
- package/dist/components/segmented-icon-toggle.d.ts +2 -3
- package/dist/components/sheet.d.ts +1 -1
- package/dist/components/sidebar.d.ts +5 -5
- package/dist/components/sidebar.logic.d.ts +7 -8
- package/dist/components/stella-mark.d.ts +2 -3
- package/dist/components/stella-wordmark.d.ts +2 -3
- package/dist/components/tooltip.d.ts +1 -1
- package/dist/components/workspace-shell.d.ts +3 -3
- package/dist/data-table/schema.d.ts +11 -12
- package/dist/data-table/table.d.ts +8 -9
- package/dist/hooks/use-contained-handler.d.ts +3 -4
- package/dist/hooks/use-content-dir.d.ts +4 -5
- package/dist/hooks/use-latest.d.ts +2 -3
- package/dist/hooks/use-mobile.d.ts +2 -3
- package/dist/hooks/use-viewport-width.d.ts +2 -3
- package/dist/inspector/chrome.d.ts +21 -22
- package/dist/inspector/dock.d.ts +2 -3
- package/dist/inspector/entity-tab.d.ts +4 -5
- package/dist/inspector/entity-tab.logic.d.ts +4 -5
- package/dist/inspector/facet-bar.d.ts +3 -4
- package/dist/inspector/facet-bar.logic.d.ts +4 -5
- package/dist/inspector/layout-tokens.d.ts +8 -9
- package/dist/inspector/pane-width.d.ts +11 -12
- package/dist/inspector/tabs.d.ts +7 -8
- package/dist/inspector/use-pane-width.d.ts +9 -10
- package/dist/kanban/band-peek.d.ts +7 -8
- package/dist/kanban/card-properties.d.ts +3 -4
- package/dist/kanban/card-shell.d.ts +3 -4
- package/dist/kanban/cell-action.d.ts +3 -4
- package/dist/kanban/column-band-header.d.ts +4 -5
- package/dist/kanban/column-bands.d.ts +9 -10
- package/dist/kanban/column-header.d.ts +3 -4
- package/dist/kanban/drag-interactions.d.ts +7 -8
- package/dist/kanban/grouping.d.ts +14 -15
- package/dist/kanban/layout-tokens.d.ts +6 -7
- package/dist/kanban/matrix.d.ts +20 -21
- package/dist/kanban/sortable-edge.d.ts +7 -8
- package/dist/kanban/sortable-interactions.d.ts +27 -27
- package/dist/kanban/sortable-interactions.logic.d.ts +14 -15
- package/dist/kanban/sticky-lane.d.ts +10 -11
- package/dist/kanban/subgroup-board.d.ts +10 -11
- package/dist/kanban/subgroup-board.js +8 -4
- package/dist/kanban/touch-identity.d.ts +2 -3
- package/dist/kanban/virtual-cell.d.ts +6 -7
- package/dist/lib/button-disposition.d.ts +6 -7
- package/dist/lib/control-size.d.ts +1 -1
- package/dist/lib/initials.d.ts +2 -3
- package/dist/lib/option-color.d.ts +6 -7
- package/dist/lib/overlay-layer.d.ts +6 -7
- package/dist/lib/positioner-sizing.d.ts +3 -4
- package/dist/lib/tab-order.d.ts +2 -3
- package/dist/lib/tooltip-content.d.ts +2 -3
- package/dist/lib/utils.d.ts +3 -4
- package/dist/lib/week.d.ts +4 -5
- package/dist/review/review-author-avatar.d.ts +3 -4
- package/dist/review/review-comment-card.d.ts +3 -4
- package/dist/review/review-decision-actions.d.ts +4 -5
- package/dist/review/review-diff-text.d.ts +9 -10
- package/dist/review/review-out-of-date-notice.d.ts +4 -5
- package/dist/review/review-severity-dot.d.ts +5 -6
- package/dist/review/review-status-badge.d.ts +5 -6
- package/package.json +8 -8
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
import { CollisionDetection, KeyboardCoordinateGetter, SensorContext, UniqueIdentifier } from "@dnd-kit/core";
|
|
2
2
|
//#region src/kanban/sortable-interactions.logic.d.ts
|
|
3
|
-
declare const KANBAN_DROP_TARGET_TYPES: {
|
|
3
|
+
export declare const KANBAN_DROP_TARGET_TYPES: {
|
|
4
4
|
readonly CELL: "kanban-cell";
|
|
5
5
|
readonly ITEM: "kanban-item";
|
|
6
6
|
};
|
|
7
|
-
type KanbanSortableCellPosition = {
|
|
7
|
+
export type KanbanSortableCellPosition = {
|
|
8
8
|
column: number;
|
|
9
9
|
lane: number;
|
|
10
10
|
};
|
|
11
|
-
type KanbanVirtualScrollRequest = {
|
|
11
|
+
export type KanbanVirtualScrollRequest = {
|
|
12
12
|
itemId: UniqueIdentifier;
|
|
13
13
|
type: "item";
|
|
14
14
|
};
|
|
15
|
-
type KanbanCellVirtualNavigation = {
|
|
15
|
+
export type KanbanCellVirtualNavigation = {
|
|
16
16
|
type: "static";
|
|
17
17
|
} | {
|
|
18
18
|
requestScroll: (request: KanbanVirtualScrollRequest) => void;
|
|
19
19
|
type: "virtual";
|
|
20
20
|
};
|
|
21
|
-
type KanbanCellDropData = {
|
|
21
|
+
export type KanbanCellDropData = {
|
|
22
22
|
itemIds: readonly UniqueIdentifier[];
|
|
23
23
|
navigation: KanbanCellVirtualNavigation;
|
|
24
24
|
position: KanbanSortableCellPosition;
|
|
@@ -33,7 +33,7 @@ type KanbanKeyboardTargetState = {
|
|
|
33
33
|
targetId: UniqueIdentifier;
|
|
34
34
|
type: "ready";
|
|
35
35
|
};
|
|
36
|
-
type KanbanItemDropData = {
|
|
36
|
+
export type KanbanItemDropData = {
|
|
37
37
|
navigation: {
|
|
38
38
|
current: KanbanKeyboardTargetState;
|
|
39
39
|
};
|
|
@@ -42,8 +42,8 @@ type KanbanItemDropData = {
|
|
|
42
42
|
type NavigationCell = KanbanCellDropData & {
|
|
43
43
|
id: UniqueIdentifier;
|
|
44
44
|
};
|
|
45
|
-
declare const isKanbanCellDropData: (value: unknown) => value is KanbanCellDropData;
|
|
46
|
-
declare const getKanbanKeyboardTargetState: (value: unknown) => KanbanKeyboardTargetState | undefined;
|
|
45
|
+
export declare const isKanbanCellDropData: (value: unknown) => value is KanbanCellDropData;
|
|
46
|
+
export declare const getKanbanKeyboardTargetState: (value: unknown) => KanbanKeyboardTargetState | undefined;
|
|
47
47
|
/**
|
|
48
48
|
* dnd-kit computes collisions while rendering but publishes the resulting drop
|
|
49
49
|
* target to its sensor context a render later, and resolves a drop from that
|
|
@@ -57,13 +57,13 @@ declare const getKanbanKeyboardTargetState: (value: unknown) => KanbanKeyboardTa
|
|
|
57
57
|
* is the published target. Until then both the collisions and the published
|
|
58
58
|
* target still describe where the board was before the user navigated away.
|
|
59
59
|
*/
|
|
60
|
-
declare const isKanbanDropSettled: ({ active, collisions, over }: Pick<SensorContext, "active" | "collisions" | "over">) => boolean;
|
|
61
|
-
declare const clearKanbanKeyboardTarget: (value: unknown) => void;
|
|
60
|
+
export declare const isKanbanDropSettled: ({ active, collisions, over }: Pick<SensorContext, "active" | "collisions" | "over">) => boolean;
|
|
61
|
+
export declare const clearKanbanKeyboardTarget: (value: unknown) => void;
|
|
62
62
|
/**
|
|
63
63
|
* Pointer and touch input must be inside a registered board target. Once that
|
|
64
64
|
* boundary is established, closest corners gives stable ranking across cells.
|
|
65
65
|
*/
|
|
66
|
-
declare const KANBAN_BOARD_COLLISION_DETECTION: CollisionDetection;
|
|
66
|
+
export declare const KANBAN_BOARD_COLLISION_DETECTION: CollisionDetection;
|
|
67
67
|
type NavigationDirection = "down" | "left" | "right" | "up";
|
|
68
68
|
type GetKeyboardTargetOptions = {
|
|
69
69
|
activeId: UniqueIdentifier;
|
|
@@ -72,8 +72,7 @@ type GetKeyboardTargetOptions = {
|
|
|
72
72
|
currentOverId: UniqueIdentifier;
|
|
73
73
|
direction: NavigationDirection;
|
|
74
74
|
};
|
|
75
|
-
declare const getKanbanKeyboardTarget: ({ activeId, cells, currentCellId, currentOverId, direction }: GetKeyboardTargetOptions) => UniqueIdentifier | undefined;
|
|
75
|
+
export declare const getKanbanKeyboardTarget: ({ activeId, cells, currentCellId, currentOverId, direction }: GetKeyboardTargetOptions) => UniqueIdentifier | undefined;
|
|
76
76
|
/** Ordered two-dimensional navigation over item and empty-cell targets. */
|
|
77
|
-
declare const kanbanKeyboardCoordinates: KeyboardCoordinateGetter;
|
|
78
|
-
//#endregion
|
|
79
|
-
export { KANBAN_BOARD_COLLISION_DETECTION, KANBAN_DROP_TARGET_TYPES, KanbanCellDropData, KanbanCellVirtualNavigation, KanbanItemDropData, KanbanSortableCellPosition, KanbanVirtualScrollRequest, clearKanbanKeyboardTarget, getKanbanKeyboardTarget, getKanbanKeyboardTargetState, isKanbanCellDropData, isKanbanDropSettled, kanbanKeyboardCoordinates };
|
|
77
|
+
export declare const kanbanKeyboardCoordinates: KeyboardCoordinateGetter;
|
|
78
|
+
//#endregion
|
|
@@ -9,14 +9,14 @@ import { CSSProperties, ReactNode } from "react";
|
|
|
9
9
|
* reaches in this custom property; a control sticks at that offset and
|
|
10
10
|
* releases where its lane ends, because the lane's own box is what bounds it.
|
|
11
11
|
*/
|
|
12
|
-
declare const KANBAN_STICKY_TOP_VAR: "--kanban-sticky-top";
|
|
12
|
+
export declare const KANBAN_STICKY_TOP_VAR: "--kanban-sticky-top";
|
|
13
13
|
/**
|
|
14
14
|
* Sticks a lane control just under the board's header. The fallback keeps a
|
|
15
15
|
* control usable outside a board that publishes the offset, and inside a cell
|
|
16
16
|
* that keeps its own scroll surface, where the board's header is irrelevant.
|
|
17
17
|
*/
|
|
18
|
-
declare const KANBAN_STICKY_TOP_CLASS = "top-(--kanban-sticky-top,0px)";
|
|
19
|
-
type KanbanStickyTopStyle = CSSProperties & {
|
|
18
|
+
export declare const KANBAN_STICKY_TOP_CLASS = "top-(--kanban-sticky-top,0px)";
|
|
19
|
+
export type KanbanStickyTopStyle = CSSProperties & {
|
|
20
20
|
[KANBAN_STICKY_TOP_VAR]?: string;
|
|
21
21
|
};
|
|
22
22
|
/**
|
|
@@ -27,14 +27,14 @@ type KanbanStickyTopStyle = CSSProperties & {
|
|
|
27
27
|
* publishes it on each row it renders, because only the cell knows how tall its
|
|
28
28
|
* own pinned action turned out and how far it translated that row.
|
|
29
29
|
*/
|
|
30
|
-
declare const KANBAN_CARD_STICKY_TOP_VAR: "--kanban-card-sticky-top";
|
|
30
|
+
export declare const KANBAN_CARD_STICKY_TOP_VAR: "--kanban-card-sticky-top";
|
|
31
31
|
/**
|
|
32
32
|
* Sticks a card's identity row under everything pinned above it. The fallback
|
|
33
33
|
* keeps the row usable inside a card rendered outside a cell that publishes the
|
|
34
34
|
* offset, where nothing is pinned above it at all.
|
|
35
35
|
*/
|
|
36
|
-
declare const KANBAN_CARD_STICKY_TOP_CLASS = "top-(--kanban-card-sticky-top,0px)";
|
|
37
|
-
type KanbanCardStickyTopStyle = CSSProperties & {
|
|
36
|
+
export declare const KANBAN_CARD_STICKY_TOP_CLASS = "top-(--kanban-card-sticky-top,0px)";
|
|
37
|
+
export type KanbanCardStickyTopStyle = CSSProperties & {
|
|
38
38
|
[KANBAN_CARD_STICKY_TOP_VAR]?: string;
|
|
39
39
|
};
|
|
40
40
|
type ResolveKanbanCardStickyTopOptions = {
|
|
@@ -53,8 +53,8 @@ type ResolveKanbanCardStickyTopOptions = {
|
|
|
53
53
|
* offset in the space the browser actually resolves it in, so every card pins
|
|
54
54
|
* where the chrome above it ends no matter how far down the lane it is.
|
|
55
55
|
*/
|
|
56
|
-
declare const resolveKanbanCardStickyTop: ({ pinnedAbove, rowOffset }: ResolveKanbanCardStickyTopOptions) => string;
|
|
57
|
-
type KanbanCollapsedBandCaptionProps = {
|
|
56
|
+
export declare const resolveKanbanCardStickyTop: ({ pinnedAbove, rowOffset }: ResolveKanbanCardStickyTopOptions) => string;
|
|
57
|
+
export type KanbanCollapsedBandCaptionProps = {
|
|
58
58
|
label: string;
|
|
59
59
|
/** What the folded band stands in for: its count, already formatted. */
|
|
60
60
|
meta: ReactNode;
|
|
@@ -69,6 +69,5 @@ type KanbanCollapsedBandCaptionProps = {
|
|
|
69
69
|
* height (`h-full`), or a caption as tall as its own text can never move.
|
|
70
70
|
* A host rendering its own collapsed cell composes this inside that cell.
|
|
71
71
|
*/
|
|
72
|
-
declare const KanbanCollapsedBandCaption: ({ className, label, meta }: KanbanCollapsedBandCaptionProps) => import("react").JSX.Element;
|
|
73
|
-
//#endregion
|
|
74
|
-
export { KANBAN_CARD_STICKY_TOP_CLASS, KANBAN_CARD_STICKY_TOP_VAR, KANBAN_STICKY_TOP_CLASS, KANBAN_STICKY_TOP_VAR, KanbanCardStickyTopStyle, KanbanCollapsedBandCaption, KanbanCollapsedBandCaptionProps, KanbanStickyTopStyle, resolveKanbanCardStickyTop };
|
|
72
|
+
export declare const KanbanCollapsedBandCaption: ({ className, label, meta }: KanbanCollapsedBandCaptionProps) => import("react").JSX.Element;
|
|
73
|
+
//#endregion
|
|
@@ -3,26 +3,26 @@ import { KanbanColumnBand, KanbanGroup } from "./grouping.js";
|
|
|
3
3
|
import { KanbanBoardCell, KanbanBoardColumn, KanbanBoardMatrix } from "./matrix.js";
|
|
4
4
|
import { ReactNode } from "react";
|
|
5
5
|
//#region src/kanban/subgroup-board.d.ts
|
|
6
|
-
type KanbanSubgroupColumnHeaderContext = {
|
|
6
|
+
export type KanbanSubgroupColumnHeaderContext = {
|
|
7
7
|
column: KanbanBoardColumn;
|
|
8
8
|
count: number;
|
|
9
9
|
};
|
|
10
|
-
type KanbanSubgroupLaneIdentityContext = {
|
|
10
|
+
export type KanbanSubgroupLaneIdentityContext = {
|
|
11
11
|
group: KanbanGroup;
|
|
12
12
|
count: number;
|
|
13
13
|
};
|
|
14
14
|
/** One column's cell in a lane's own row, and what that cell stands for. */
|
|
15
|
-
type KanbanSubgroupLaneColumnSummaryContext = {
|
|
15
|
+
export type KanbanSubgroupLaneColumnSummaryContext = {
|
|
16
16
|
lane: KanbanGroup;
|
|
17
17
|
column: KanbanBoardColumn;
|
|
18
18
|
/** Rows in this lane/column intersection, including zero. */
|
|
19
19
|
count: number;
|
|
20
20
|
};
|
|
21
|
-
type KanbanSubgroupLaneColumnActionContext = {
|
|
21
|
+
export type KanbanSubgroupLaneColumnActionContext = {
|
|
22
22
|
lane: KanbanGroup;
|
|
23
23
|
column: KanbanBoardColumn;
|
|
24
24
|
};
|
|
25
|
-
type KanbanSubgroupCellContext<TRow> = {
|
|
25
|
+
export type KanbanSubgroupCellContext<TRow> = {
|
|
26
26
|
cell: KanbanBoardCell<TRow>;
|
|
27
27
|
/** Number of rows in this lane/column intersection, including zero. */
|
|
28
28
|
count: number;
|
|
@@ -34,7 +34,7 @@ type KanbanSubgroupCellContext<TRow> = {
|
|
|
34
34
|
*/
|
|
35
35
|
band: KanbanColumnBand | null;
|
|
36
36
|
};
|
|
37
|
-
type KanbanSubgroupBandHeaderContext = {
|
|
37
|
+
export type KanbanSubgroupBandHeaderContext = {
|
|
38
38
|
band: KanbanColumnBand;
|
|
39
39
|
columns: KanbanBoardColumn[];
|
|
40
40
|
/** Rows across the band's columns, every lane included. */
|
|
@@ -59,7 +59,7 @@ type KanbanSubgroupBandHeaderContext = {
|
|
|
59
59
|
* register the slot as a drop target that lands in the band's first column
|
|
60
60
|
* (or asks which), and the count it stands in for.
|
|
61
61
|
*/
|
|
62
|
-
type KanbanSubgroupCollapsedBandCellContext<TRow> = {
|
|
62
|
+
export type KanbanSubgroupCollapsedBandCellContext<TRow> = {
|
|
63
63
|
band: KanbanColumnBand;
|
|
64
64
|
cells: KanbanBoardCell<TRow>[];
|
|
65
65
|
count: number;
|
|
@@ -72,7 +72,7 @@ type KanbanSubgroupCollapseControl = {
|
|
|
72
72
|
isLaneCollapsed: (group: KanbanGroup, count: number) => boolean;
|
|
73
73
|
onLaneCollapsedChange: (group: KanbanGroup, collapsed: boolean) => void;
|
|
74
74
|
};
|
|
75
|
-
type KanbanSubgroupBoardProps<TRow> = {
|
|
75
|
+
export type KanbanSubgroupBoardProps<TRow> = {
|
|
76
76
|
matrix: KanbanBoardMatrix<TRow>;
|
|
77
77
|
renderColumnHeader: (context: KanbanSubgroupColumnHeaderContext) => ReactNode;
|
|
78
78
|
renderLaneIdentity: (context: KanbanSubgroupLaneIdentityContext) => ReactNode;
|
|
@@ -152,6 +152,5 @@ type KanbanSubgroupBoardProps<TRow> = {
|
|
|
152
152
|
* in every state; the caption line never grows past its own height, so a
|
|
153
153
|
* folded band costs no vertical space.
|
|
154
154
|
*/
|
|
155
|
-
declare const KanbanSubgroupBoard: <TRow>({ matrix, renderColumnHeader, renderLaneIdentity, renderCell, renderLaneColumnSummary, renderLaneColumnAction, renderBandHeader, renderCollapsedBandCell, formatBandToggleLabel, formatCount, isLaneCollapsed, onLaneCollapsedChange, isBandCollapsed, onBandCollapsedChange, footer, className, dragOverBandId, isDragging }: KanbanSubgroupBoardProps<TRow>) => import("react").JSX.Element;
|
|
156
|
-
//#endregion
|
|
157
|
-
export { KanbanSubgroupBandHeaderContext, KanbanSubgroupBoard, KanbanSubgroupBoardProps, KanbanSubgroupCellContext, KanbanSubgroupCollapsedBandCellContext, KanbanSubgroupColumnHeaderContext, KanbanSubgroupLaneColumnActionContext, KanbanSubgroupLaneColumnSummaryContext, KanbanSubgroupLaneIdentityContext };
|
|
155
|
+
export declare const KanbanSubgroupBoard: <TRow>({ matrix, renderColumnHeader, renderLaneIdentity, renderCell, renderLaneColumnSummary, renderLaneColumnAction, renderBandHeader, renderCollapsedBandCell, formatBandToggleLabel, formatCount, isLaneCollapsed, onLaneCollapsedChange, isBandCollapsed, onBandCollapsedChange, footer, className, dragOverBandId, isDragging }: KanbanSubgroupBoardProps<TRow>) => import("react").JSX.Element;
|
|
156
|
+
//#endregion
|
|
@@ -74,10 +74,14 @@ const KanbanSubgroupBoard = ({ matrix, renderColumnHeader, renderLaneIdentity, r
|
|
|
74
74
|
if (dragOverBandId === void 0 || dragOverBandId === previousDragOverBandId.current) return;
|
|
75
75
|
const previous = previousDragOverBandId.current;
|
|
76
76
|
previousDragOverBandId.current = dragOverBandId;
|
|
77
|
-
if (previous !== null)
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
77
|
+
if (previous !== null) {
|
|
78
|
+
if (peekingBandId === previous) peek.openDragLeave(previous);
|
|
79
|
+
else peek.slotDragLeave(previous);
|
|
80
|
+
}
|
|
81
|
+
if (dragOverBandId !== null) {
|
|
82
|
+
if (peekingBandId === dragOverBandId) peek.openDragEnter(dragOverBandId);
|
|
83
|
+
else peek.slotDragOver(dragOverBandId);
|
|
84
|
+
}
|
|
81
85
|
}, [
|
|
82
86
|
dragOverBandId,
|
|
83
87
|
peek,
|
|
@@ -3,6 +3,5 @@ type ActiveTouchChangeOptions = {
|
|
|
3
3
|
activeTouchIdentifier: number | null;
|
|
4
4
|
changedTouchIdentifiers: readonly number[];
|
|
5
5
|
};
|
|
6
|
-
declare const isActiveTouchChange: ({ activeTouchIdentifier, changedTouchIdentifiers }: ActiveTouchChangeOptions) => boolean;
|
|
7
|
-
//#endregion
|
|
8
|
-
export { isActiveTouchChange };
|
|
6
|
+
export declare const isActiveTouchChange: ({ activeTouchIdentifier, changedTouchIdentifiers }: ActiveTouchChangeOptions) => boolean;
|
|
7
|
+
//#endregion
|
|
@@ -4,11 +4,11 @@ import { Key, ReactNode, RefObject } from "react";
|
|
|
4
4
|
import { UniqueIdentifier } from "@dnd-kit/core";
|
|
5
5
|
import { SortableContextProps, SortingStrategy } from "@dnd-kit/sortable";
|
|
6
6
|
//#region src/kanban/virtual-cell.d.ts
|
|
7
|
-
declare const KANBAN_VIRTUAL_CELL_PAGINATION: {
|
|
7
|
+
export declare const KANBAN_VIRTUAL_CELL_PAGINATION: {
|
|
8
8
|
readonly NONE: "none";
|
|
9
9
|
readonly CURSOR: "cursor";
|
|
10
10
|
};
|
|
11
|
-
type KanbanVirtualCellPagination = {
|
|
11
|
+
export type KanbanVirtualCellPagination = {
|
|
12
12
|
type: "none";
|
|
13
13
|
} | {
|
|
14
14
|
type: "cursor";
|
|
@@ -24,13 +24,13 @@ type KanbanVirtualCellPagination = {
|
|
|
24
24
|
* separate sortable identifier avoids narrowing an existing React key contract
|
|
25
25
|
* merely to support dnd-kit consumers.
|
|
26
26
|
*/
|
|
27
|
-
type KanbanVirtualCellSortableContext<TRow> = {
|
|
27
|
+
export type KanbanVirtualCellSortableContext<TRow> = {
|
|
28
28
|
dropTarget: Omit<UseKanbanDropTargetOptions, "itemIds" | "navigation">;
|
|
29
29
|
getRowId: (row: TRow) => UniqueIdentifier;
|
|
30
30
|
disabled?: SortableContextProps["disabled"] | undefined;
|
|
31
31
|
strategy?: SortingStrategy | undefined;
|
|
32
32
|
};
|
|
33
|
-
type KanbanVirtualCellProps<TRow> = {
|
|
33
|
+
export type KanbanVirtualCellProps<TRow> = {
|
|
34
34
|
rows: readonly TRow[];
|
|
35
35
|
getRowKey: (row: TRow) => Key;
|
|
36
36
|
renderRow: (row: TRow) => ReactNode;
|
|
@@ -71,6 +71,5 @@ type KanbanVirtualCellProps<TRow> = {
|
|
|
71
71
|
className?: string | undefined;
|
|
72
72
|
};
|
|
73
73
|
/** Bounded, virtualized Kanban cell with cursor-page request deduplication. */
|
|
74
|
-
declare const KanbanVirtualCell: <TRow>({ rows, getRowKey, renderRow, pagination, sortable, containerRef, active, backgroundColor, accent, footer, footerPlacement, estimateSize, overscan, loadMoreThreshold, className }: KanbanVirtualCellProps<TRow>) => import("react").JSX.Element;
|
|
75
|
-
//#endregion
|
|
76
|
-
export { KANBAN_VIRTUAL_CELL_PAGINATION, KanbanVirtualCell, KanbanVirtualCellPagination, KanbanVirtualCellProps, KanbanVirtualCellSortableContext };
|
|
74
|
+
export declare const KanbanVirtualCell: <TRow>({ rows, getRowKey, renderRow, pagination, sortable, containerRef, active, backgroundColor, accent, footer, footerPlacement, estimateSize, overscan, loadMoreThreshold, className }: KanbanVirtualCellProps<TRow>) => import("react").JSX.Element;
|
|
75
|
+
//#endregion
|
|
@@ -16,21 +16,21 @@ import * as React$1 from "react";
|
|
|
16
16
|
* (`useFocusableWhenDisabled`): `aria-disabled` instead of `disabled`, focusable,
|
|
17
17
|
* and non-`Tab` key defaults suppressed.
|
|
18
18
|
*/
|
|
19
|
-
declare const BUTTON_DISPOSITION: {
|
|
19
|
+
export declare const BUTTON_DISPOSITION: {
|
|
20
20
|
readonly enabled: "enabled";
|
|
21
21
|
/** Native `disabled`: out of the tab order, inert to pointer and keyboard. */
|
|
22
22
|
readonly nativeDisabled: "native-disabled";
|
|
23
23
|
/** `aria-disabled`: focusable and hoverable so its tooltip can still open. */
|
|
24
24
|
readonly accessibleDisabled: "accessible-disabled";
|
|
25
25
|
};
|
|
26
|
-
type ButtonDisposition = (typeof BUTTON_DISPOSITION)[keyof typeof BUTTON_DISPOSITION];
|
|
26
|
+
export type ButtonDisposition = (typeof BUTTON_DISPOSITION)[keyof typeof BUTTON_DISPOSITION];
|
|
27
27
|
type ButtonDispositionInput = {
|
|
28
28
|
disabled: boolean | undefined;
|
|
29
29
|
loading: boolean | undefined;
|
|
30
30
|
/** Resolved tooltip content, i.e. what `renderTooltipTrigger` would mount. */
|
|
31
31
|
tooltip: React$1.ReactNode;
|
|
32
32
|
};
|
|
33
|
-
declare const resolveButtonDisposition: ({ disabled, loading, tooltip }: ButtonDispositionInput) => ButtonDisposition;
|
|
33
|
+
export declare const resolveButtonDisposition: ({ disabled, loading, tooltip }: ButtonDispositionInput) => ButtonDisposition;
|
|
34
34
|
/**
|
|
35
35
|
* The parts of a React synthetic event these blockers touch.
|
|
36
36
|
*
|
|
@@ -50,14 +50,13 @@ type BlockableEvent = {
|
|
|
50
50
|
* implicit submission (Enter in a text field) dispatches a click at the form's
|
|
51
51
|
* default button, so both paths funnel through here.
|
|
52
52
|
*/
|
|
53
|
-
declare const blockDisabledActivation: (event: BlockableEvent) => void;
|
|
53
|
+
export declare const blockDisabledActivation: (event: BlockableEvent) => void;
|
|
54
54
|
/**
|
|
55
55
|
* The keyboard counterpart. `Tab` keeps its default so focus can leave the
|
|
56
56
|
* control; suppressing the default on `Enter`/`Space` stops the browser from
|
|
57
57
|
* synthesizing the click that would activate or submit.
|
|
58
58
|
*/
|
|
59
|
-
declare const blockDisabledKeyActivation: (event: BlockableEvent & {
|
|
59
|
+
export declare const blockDisabledKeyActivation: (event: BlockableEvent & {
|
|
60
60
|
key: string;
|
|
61
61
|
}) => void;
|
|
62
|
-
//#endregion
|
|
63
|
-
export { BUTTON_DISPOSITION, ButtonDisposition, blockDisabledActivation, blockDisabledKeyActivation, resolveButtonDisposition };
|
|
62
|
+
//#endregion
|
|
@@ -5,6 +5,6 @@ declare const CONTROL_SIZE: Readonly<{
|
|
|
5
5
|
readonly lg: "lg";
|
|
6
6
|
}>;
|
|
7
7
|
type ControlSize = (typeof CONTROL_SIZE)[keyof typeof CONTROL_SIZE];
|
|
8
|
-
declare const CONTROL_SIZES: readonly ("
|
|
8
|
+
declare const CONTROL_SIZES: readonly ("sm" | "default" | "lg")[];
|
|
9
9
|
//#endregion
|
|
10
10
|
export { CONTROL_SIZE, CONTROL_SIZES, type ControlSize };
|
package/dist/lib/initials.d.ts
CHANGED
|
@@ -13,16 +13,15 @@
|
|
|
13
13
|
* token was chosen for.
|
|
14
14
|
*/
|
|
15
15
|
/** Named preset or arbitrary 6-character hex colour (e.g. "FF0000"). */
|
|
16
|
-
type OptionColor = "red" | "orange" | "amber" | "yellow" | "lime" | "green" | "emerald" | "teal" | "cyan" | "sky" | "blue" | "indigo" | "violet" | "purple" | "fuchsia" | "gray" | (string & Record<never, never>);
|
|
17
|
-
type ColorVariants = {
|
|
16
|
+
export type OptionColor = "red" | "orange" | "amber" | "yellow" | "lime" | "green" | "emerald" | "teal" | "cyan" | "sky" | "blue" | "indigo" | "violet" | "purple" | "fuchsia" | "gray" | (string & Record<never, never>);
|
|
17
|
+
export type ColorVariants = {
|
|
18
18
|
background: string;
|
|
19
19
|
foreground: string;
|
|
20
20
|
color: string;
|
|
21
21
|
};
|
|
22
|
-
declare const emptyColor: ColorVariants;
|
|
22
|
+
export declare const emptyColor: ColorVariants;
|
|
23
23
|
/** Resolve any OptionColor (named or hex) to CSS color variants. */
|
|
24
|
-
declare const resolveOptionColor: (color: OptionColor) => ColorVariants;
|
|
24
|
+
export declare const resolveOptionColor: (color: OptionColor) => ColorVariants;
|
|
25
25
|
/** The 16 named preset color keys. */
|
|
26
|
-
declare const optionColors: readonly OptionColor[];
|
|
27
|
-
//#endregion
|
|
28
|
-
export { ColorVariants, OptionColor, emptyColor, optionColors, resolveOptionColor };
|
|
26
|
+
export declare const optionColors: readonly OptionColor[];
|
|
27
|
+
//#endregion
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//#region src/lib/overlay-layer.d.ts
|
|
2
|
-
declare const BOARD_DRAG_OVERLAY_Z_INDEX = 75;
|
|
2
|
+
export declare const BOARD_DRAG_OVERLAY_Z_INDEX = 75;
|
|
3
3
|
/**
|
|
4
4
|
* The shell's own sticky chrome: its top bar, and anything else the shell pins
|
|
5
5
|
* around a view.
|
|
@@ -12,8 +12,8 @@ declare const BOARD_DRAG_OVERLAY_Z_INDEX = 75;
|
|
|
12
12
|
* Stated one step above that, and far below every portalled surface here,
|
|
13
13
|
* which must still cover the shell.
|
|
14
14
|
*/
|
|
15
|
-
declare const SHELL_CHROME_LAYER_CLASS_NAME = "z-30";
|
|
16
|
-
declare const OVERLAY_LAYER_CLASS_NAMES: {
|
|
15
|
+
export declare const SHELL_CHROME_LAYER_CLASS_NAME = "z-30";
|
|
16
|
+
export declare const OVERLAY_LAYER_CLASS_NAMES: {
|
|
17
17
|
/** Docked composer, suggestion chips, and other in-pane floating chrome. */
|
|
18
18
|
readonly chrome: "z-[80]";
|
|
19
19
|
/** Dialogs, sheets, popovers, tooltips: above chrome, below toasts. */
|
|
@@ -31,13 +31,12 @@ declare const OVERLAY_LAYER_CLASS_NAMES: {
|
|
|
31
31
|
/** Historical alias for `popup`; Search's own menus use the same band. */
|
|
32
32
|
readonly "search-child": "z-[100]";
|
|
33
33
|
};
|
|
34
|
-
type OverlayLayer = keyof typeof OVERLAY_LAYER_CLASS_NAMES;
|
|
34
|
+
export type OverlayLayer = keyof typeof OVERLAY_LAYER_CLASS_NAMES;
|
|
35
35
|
/**
|
|
36
36
|
* Gap kept between a collision-shifted floating surface and its boundary, in
|
|
37
37
|
* pixels. Base UI's 5px default puts the popup shadow flush against the
|
|
38
38
|
* viewport edge once `shift()` has to move a popup that is wider than its
|
|
39
39
|
* anchor, which reads as a clipped surface rather than a repositioned one.
|
|
40
40
|
*/
|
|
41
|
-
declare const OVERLAY_COLLISION_PADDING = 8;
|
|
42
|
-
//#endregion
|
|
43
|
-
export { BOARD_DRAG_OVERLAY_Z_INDEX, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OverlayLayer, SHELL_CHROME_LAYER_CLASS_NAME };
|
|
41
|
+
export declare const OVERLAY_COLLISION_PADDING = 8;
|
|
42
|
+
//#endregion
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
//#region src/lib/positioner-sizing.d.ts
|
|
2
|
-
declare const CONTENT_SIZED_POSITIONER_CLASS_NAME = "w-max max-w-(--available-width)";
|
|
3
|
-
declare const IN_FLOW_POPUP_CLASS_NAME = "relative!";
|
|
4
|
-
//#endregion
|
|
5
|
-
export { CONTENT_SIZED_POSITIONER_CLASS_NAME, IN_FLOW_POPUP_CLASS_NAME };
|
|
2
|
+
export declare const CONTENT_SIZED_POSITIONER_CLASS_NAME = "w-max max-w-(--available-width)";
|
|
3
|
+
export declare const IN_FLOW_POPUP_CLASS_NAME = "relative!";
|
|
4
|
+
//#endregion
|
package/dist/lib/tab-order.d.ts
CHANGED
|
@@ -10,6 +10,5 @@
|
|
|
10
10
|
* the whole of the workaround, so compare identity rather than count, because
|
|
11
11
|
* React moves the same nodes when it reorders keyed children.
|
|
12
12
|
*/
|
|
13
|
-
declare const hasTabOrderChanged: <T>(previous: readonly T[], next: readonly T[]) => boolean;
|
|
14
|
-
//#endregion
|
|
15
|
-
export { hasTabOrderChanged };
|
|
13
|
+
export declare const hasTabOrderChanged: <T>(previous: readonly T[], next: readonly T[]) => boolean;
|
|
14
|
+
//#endregion
|
|
@@ -8,6 +8,5 @@ import * as React$1 from "react";
|
|
|
8
8
|
* a disabled button has to stay hoverable so that popup can open. Two copies of
|
|
9
9
|
* this predicate would drift into a button that suppresses its own tooltip.
|
|
10
10
|
*/
|
|
11
|
-
declare const hasTooltipContent: (content: React$1.ReactNode) => boolean;
|
|
12
|
-
//#endregion
|
|
13
|
-
export { hasTooltipContent };
|
|
11
|
+
export declare const hasTooltipContent: (content: React$1.ReactNode) => boolean;
|
|
12
|
+
//#endregion
|
package/dist/lib/utils.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ClassValue } from "clsx";
|
|
2
2
|
import * as React$1 from "react";
|
|
3
3
|
//#region src/lib/utils.d.ts
|
|
4
|
-
declare function cn(...inputs: ClassValue[]): string;
|
|
4
|
+
export declare function cn(...inputs: ClassValue[]): string;
|
|
5
5
|
/**
|
|
6
6
|
* Compose multiple refs into a single ref callback.
|
|
7
7
|
* Adapted from `@radix-ui/react-compose-refs` (MIT).
|
|
@@ -15,6 +15,5 @@ declare function cn(...inputs: ClassValue[]): string;
|
|
|
15
15
|
* their callback happened to return as a cleanup, and warn
|
|
16
16
|
* when it is neither a function nor `undefined`.
|
|
17
17
|
*/
|
|
18
|
-
declare const composeRefs: <T>(...refs: (React$1.Ref<T> | undefined)[]) => ((node: T | null) => (() => void) | undefined);
|
|
19
|
-
//#endregion
|
|
20
|
-
export { cn, composeRefs };
|
|
18
|
+
export declare const composeRefs: <T>(...refs: (React$1.Ref<T> | undefined)[]) => ((node: T | null) => (() => void) | undefined);
|
|
19
|
+
//#endregion
|
package/dist/lib/week.d.ts
CHANGED
|
@@ -8,18 +8,17 @@
|
|
|
8
8
|
* on engines that predate `getWeekInfo()`. Returns undefined when unavailable
|
|
9
9
|
* so callers can apply their own fallback.
|
|
10
10
|
*/
|
|
11
|
-
declare const getLocaleWeekInfo: (locale: string) => Intl.WeekInfo | undefined;
|
|
11
|
+
export declare const getLocaleWeekInfo: (locale: string) => Intl.WeekInfo | undefined;
|
|
12
12
|
/**
|
|
13
13
|
* First weekday as a day-of-week value (0 = Sunday … 6 = Saturday): Monday
|
|
14
14
|
* across most of Europe, Sunday in the US, Saturday across much of the Gulf.
|
|
15
15
|
* Falls back to Monday when the runtime lacks week info.
|
|
16
16
|
*/
|
|
17
|
-
declare const getFirstWeekday: (locale: string) => number;
|
|
17
|
+
export declare const getFirstWeekday: (locale: string) => number;
|
|
18
18
|
/**
|
|
19
19
|
* Weekend weekdays as day-of-week values (0 = Sunday … 6 = Saturday):
|
|
20
20
|
* Saturday/Sunday across the West, Friday/Saturday across much of the Gulf.
|
|
21
21
|
* Falls back to Saturday/Sunday when the runtime lacks week info.
|
|
22
22
|
*/
|
|
23
|
-
declare const getWeekendDays: (locale: string) => ReadonlySet<number>;
|
|
24
|
-
//#endregion
|
|
25
|
-
export { getFirstWeekday, getLocaleWeekInfo, getWeekendDays };
|
|
23
|
+
export declare const getWeekendDays: (locale: string) => ReadonlySet<number>;
|
|
24
|
+
//#endregion
|
|
@@ -7,7 +7,7 @@ import { ComponentProps } from "react";
|
|
|
7
7
|
* the constant is exported so every surface that needs the same placeholder
|
|
8
8
|
* outside an avatar reads it from here rather than minting its own.
|
|
9
9
|
*/
|
|
10
|
-
declare const UNKNOWN_AUTHOR_LABEL = "Unknown user";
|
|
10
|
+
export declare const UNKNOWN_AUTHOR_LABEL = "Unknown user";
|
|
11
11
|
type ReviewAuthorAvatarProps = Omit<ComponentProps<typeof Avatar>, "children" | "className"> & {
|
|
12
12
|
image?: string | null | undefined;
|
|
13
13
|
name?: string | null;
|
|
@@ -18,6 +18,5 @@ type ReviewAuthorAvatarProps = Omit<ComponentProps<typeof Avatar>, "children" |
|
|
|
18
18
|
};
|
|
19
19
|
/** The author's face on any review surface: image when there is one, initials
|
|
20
20
|
* otherwise, dimmed once the account is gone. */
|
|
21
|
-
declare const ReviewAuthorAvatar: ({ deleted, image, name, fallbackLabel, className, fallbackClassName, ...avatarProps }: ReviewAuthorAvatarProps) => import("react").JSX.Element;
|
|
22
|
-
//#endregion
|
|
23
|
-
export { ReviewAuthorAvatar, UNKNOWN_AUTHOR_LABEL };
|
|
21
|
+
export declare const ReviewAuthorAvatar: ({ deleted, image, name, fallbackLabel, className, fallbackClassName, ...avatarProps }: ReviewAuthorAvatarProps) => import("react").JSX.Element;
|
|
22
|
+
//#endregion
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ReactNode } from "react";
|
|
2
2
|
//#region src/review/review-comment-card.d.ts
|
|
3
|
-
type ReviewCommentAuthor = {
|
|
3
|
+
export type ReviewCommentAuthor = {
|
|
4
4
|
name: string | null;
|
|
5
5
|
image?: string | null | undefined;
|
|
6
6
|
deleted?: boolean | undefined;
|
|
@@ -28,6 +28,5 @@ type ReviewCommentCardProps = {
|
|
|
28
28
|
};
|
|
29
29
|
/** One comment on a reviewed surface: who wrote it, when, what it says, what
|
|
30
30
|
* it points at, and the two things a reader can do to it. */
|
|
31
|
-
declare const ReviewCommentCard: ({ author, timestamp, formattedTime, body, anchorText, isStale, staleLabel, resolved, onToggleResolved, resolveLabel, reopenLabel, canDelete, onDelete, deleteLabel, className }: ReviewCommentCardProps) => import("react").JSX.Element;
|
|
32
|
-
//#endregion
|
|
33
|
-
export { ReviewCommentAuthor, ReviewCommentCard };
|
|
31
|
+
export declare const ReviewCommentCard: ({ author, timestamp, formattedTime, body, anchorText, isStale, staleLabel, resolved, onToggleResolved, resolveLabel, reopenLabel, canDelete, onDelete, deleteLabel, className }: ReviewCommentCardProps) => import("react").JSX.Element;
|
|
32
|
+
//#endregion
|
|
@@ -6,8 +6,8 @@ import { ReactNode } from "react";
|
|
|
6
6
|
* decision). `applying` is undecided but in flight: the same pair, inert,
|
|
7
7
|
* so the row does not resize while the write lands.
|
|
8
8
|
*/
|
|
9
|
-
type ReviewDecisionState = "pending" | "accepted" | "rejected" | "dismissed" | "applying";
|
|
10
|
-
type ReviewDecisionSize = "xs" | "sm";
|
|
9
|
+
export type ReviewDecisionState = "pending" | "accepted" | "rejected" | "dismissed" | "applying";
|
|
10
|
+
export type ReviewDecisionSize = "xs" | "sm";
|
|
11
11
|
type ReviewDecisionActionsProps = {
|
|
12
12
|
state: ReviewDecisionState;
|
|
13
13
|
onAccept?: (() => void) | undefined;
|
|
@@ -27,6 +27,5 @@ type ReviewDecisionActionsProps = {
|
|
|
27
27
|
className?: string;
|
|
28
28
|
};
|
|
29
29
|
/** Accept / reject / revert / reopen, in one shape, for every review surface. */
|
|
30
|
-
declare const ReviewDecisionActions: ({ state, onAccept, onReject, onRevert, onReopen, size, acceptLabel, rejectLabel, revertLabel, reopenLabel, acceptTooltip, rejectTooltip, disabled, className }: ReviewDecisionActionsProps) => import("react").JSX.Element | null;
|
|
31
|
-
//#endregion
|
|
32
|
-
export { ReviewDecisionActions, ReviewDecisionSize, ReviewDecisionState };
|
|
30
|
+
export declare const ReviewDecisionActions: ({ state, onAccept, onReject, onRevert, onReopen, size, acceptLabel, rejectLabel, revertLabel, reopenLabel, acceptTooltip, rejectTooltip, disabled, className }: ReviewDecisionActionsProps) => import("react").JSX.Element | null;
|
|
31
|
+
//#endregion
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { CSSProperties, ReactNode } from "react";
|
|
2
2
|
//#region src/review/review-diff-text.d.ts
|
|
3
|
-
declare const TRACKED_DELETION_STYLE: CSSProperties;
|
|
4
|
-
declare const TRACKED_INSERTION_STYLE: CSSProperties;
|
|
5
|
-
type ReviewDiffSegmentType = "equal" | "insert" | "delete";
|
|
6
|
-
type ReviewDiffSegment = {
|
|
3
|
+
export declare const TRACKED_DELETION_STYLE: CSSProperties;
|
|
4
|
+
export declare const TRACKED_INSERTION_STYLE: CSSProperties;
|
|
5
|
+
export type ReviewDiffSegmentType = "equal" | "insert" | "delete";
|
|
6
|
+
export type ReviewDiffSegment = {
|
|
7
7
|
type: ReviewDiffSegmentType;
|
|
8
8
|
text: string;
|
|
9
9
|
};
|
|
@@ -12,22 +12,21 @@ type ReviewDiffProps = {
|
|
|
12
12
|
children: ReactNode;
|
|
13
13
|
};
|
|
14
14
|
/** Inserted text, wherever it is shown. */
|
|
15
|
-
declare const ReviewDiffInsertion: ({ className, children }: ReviewDiffProps) => import("react").JSX.Element;
|
|
15
|
+
export declare const ReviewDiffInsertion: ({ className, children }: ReviewDiffProps) => import("react").JSX.Element;
|
|
16
16
|
/** Deleted text, wherever it is shown. */
|
|
17
|
-
declare const ReviewDiffDeletion: ({ className, children }: ReviewDiffProps) => import("react").JSX.Element;
|
|
17
|
+
export declare const ReviewDiffDeletion: ({ className, children }: ReviewDiffProps) => import("react").JSX.Element;
|
|
18
18
|
type ReviewDiffTextProps = {
|
|
19
19
|
segments: readonly ReviewDiffSegment[];
|
|
20
20
|
className?: string;
|
|
21
21
|
};
|
|
22
22
|
/** A word-level diff rendered inline, in the product's one track-changes
|
|
23
23
|
* language. */
|
|
24
|
-
declare const ReviewDiffText: ({ segments, className }: ReviewDiffTextProps) => import("react").JSX.Element;
|
|
24
|
+
export declare const ReviewDiffText: ({ segments, className }: ReviewDiffTextProps) => import("react").JSX.Element;
|
|
25
25
|
/**
|
|
26
26
|
* A stable render key per segment. Type and text alone repeat inside a single
|
|
27
27
|
* diff (the same word deleted twice), so each repetition carries its
|
|
28
28
|
* occurrence count; the result is stable across renders of the same diff and
|
|
29
29
|
* never falls back to the array index.
|
|
30
30
|
*/
|
|
31
|
-
declare const reviewDiffSegmentKeys: (segments: readonly ReviewDiffSegment[]) => string[];
|
|
32
|
-
//#endregion
|
|
33
|
-
export { ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffSegment, ReviewDiffSegmentType, ReviewDiffText, TRACKED_DELETION_STYLE, TRACKED_INSERTION_STYLE, reviewDiffSegmentKeys };
|
|
31
|
+
export declare const reviewDiffSegmentKeys: (segments: readonly ReviewDiffSegment[]) => string[];
|
|
32
|
+
//#endregion
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { ReactNode } from "react";
|
|
2
2
|
//#region src/review/review-out-of-date-notice.d.ts
|
|
3
|
-
type ReviewOutOfDateTone = "warning" | "muted";
|
|
3
|
+
export type ReviewOutOfDateTone = "warning" | "muted";
|
|
4
4
|
/**
|
|
5
5
|
* One reason a review has fallen behind. Carries its own key so the list is
|
|
6
6
|
* never rendered by array index: reasons come and go independently (the
|
|
7
7
|
* document changed, the playbook moved on, the source was deleted) and each
|
|
8
8
|
* one has a stable identity at its call site.
|
|
9
9
|
*/
|
|
10
|
-
type ReviewOutOfDateReason = {
|
|
10
|
+
export type ReviewOutOfDateReason = {
|
|
11
11
|
id: string;
|
|
12
12
|
label: ReactNode;
|
|
13
13
|
};
|
|
@@ -23,6 +23,5 @@ type ReviewOutOfDateNoticeProps = {
|
|
|
23
23
|
* together: they are different reasons to run again, and a reviewer working
|
|
24
24
|
* through findings should see each one rather than the first.
|
|
25
25
|
*/
|
|
26
|
-
declare const ReviewOutOfDateNotice: ({ reasons, actionLabel, onAction, tone, className }: ReviewOutOfDateNoticeProps) => import("react").JSX.Element | null;
|
|
27
|
-
//#endregion
|
|
28
|
-
export { ReviewOutOfDateNotice, ReviewOutOfDateReason, ReviewOutOfDateTone };
|
|
26
|
+
export declare const ReviewOutOfDateNotice: ({ reasons, actionLabel, onAction, tone, className }: ReviewOutOfDateNoticeProps) => import("react").JSX.Element | null;
|
|
27
|
+
//#endregion
|
|
@@ -6,22 +6,21 @@ import { ReviewStatusTone } from "./review-status-badge.js";
|
|
|
6
6
|
* medium/low, a suggestion's high/medium/low/unspecified) map onto this at
|
|
7
7
|
* their call site rather than growing a palette of their own.
|
|
8
8
|
*/
|
|
9
|
-
type ReviewSeverityLevel = "critical" | "high" | "medium" | "low" | "none";
|
|
9
|
+
export type ReviewSeverityLevel = "critical" | "high" | "medium" | "low" | "none";
|
|
10
10
|
type ReviewSeverityDotProps = {
|
|
11
11
|
level: ReviewSeverityLevel;
|
|
12
12
|
className?: string | undefined;
|
|
13
13
|
};
|
|
14
14
|
/** The dot that precedes a severity label, and the one place a severity level
|
|
15
15
|
* turns into a colour. */
|
|
16
|
-
declare const ReviewSeverityDot: ({ level, className }: ReviewSeverityDotProps) => import("react").JSX.Element;
|
|
16
|
+
export declare const ReviewSeverityDot: ({ level, className }: ReviewSeverityDotProps) => import("react").JSX.Element;
|
|
17
17
|
type ReviewStatusDotProps = {
|
|
18
18
|
tone: ReviewStatusTone;
|
|
19
19
|
className?: string | undefined;
|
|
20
20
|
};
|
|
21
21
|
/** The same dot keyed by tone, for vocabularies that are not severities
|
|
22
22
|
* (verdicts, directed impact, comparison assessments). */
|
|
23
|
-
declare const ReviewStatusDot: ({ tone, className }: ReviewStatusDotProps) => import("react").JSX.Element;
|
|
23
|
+
export declare const ReviewStatusDot: ({ tone, className }: ReviewStatusDotProps) => import("react").JSX.Element;
|
|
24
24
|
/** The tone a severity level carries, so a badge and its dot cannot disagree. */
|
|
25
|
-
declare const reviewSeverityTone: (level: ReviewSeverityLevel) => ReviewStatusTone;
|
|
26
|
-
//#endregion
|
|
27
|
-
export { ReviewSeverityDot, ReviewSeverityLevel, ReviewStatusDot, reviewSeverityTone };
|
|
25
|
+
export declare const reviewSeverityTone: (level: ReviewSeverityLevel) => ReviewStatusTone;
|
|
26
|
+
//#endregion
|