@tailor-platform/app-shell 1.8.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app-shell-core.css +1 -1
- package/dist/app-shell.d.ts +446 -8
- package/dist/app-shell.js +4853 -4025
- package/package.json +2 -2
- package/skills/app-shell-patterns/SKILL.md +32 -20
- package/skills/app-shell-patterns/references/fundamental/components.md +105 -21
- package/skills/app-shell-patterns/references/fundamental/design-system.md +24 -0
- package/skills/app-shell-patterns/references/fundamental/graphql.md +1 -1
- package/skills/app-shell-patterns/references/patterns/detail-hero-with-actions.md +51 -7
- package/skills/app-shell-patterns/references/patterns/list-dense-scan.md +10 -4
package/dist/app-shell.d.ts
CHANGED
|
@@ -248,6 +248,8 @@ export declare const alertVariants: (props?: ({
|
|
|
248
248
|
variant?: "error" | "neutral" | "success" | "warning" | "info" | null | undefined;
|
|
249
249
|
} & ClassProp) | undefined) => string;
|
|
250
250
|
|
|
251
|
+
declare type Anchor = "start" | "center" | "end";
|
|
252
|
+
|
|
251
253
|
/**
|
|
252
254
|
* Appearance menu. The end-user controls **color theme** (light / dark / system);
|
|
253
255
|
* the color palette/brand is a developer configuration, so it is not shown here.
|
|
@@ -796,7 +798,7 @@ export declare const Avatar: {
|
|
|
796
798
|
export declare type AvatarProps = React_2.ComponentProps<typeof Avatar_2.Root> & VariantProps<typeof avatarVariants>;
|
|
797
799
|
|
|
798
800
|
export declare const avatarVariants: (props?: ({
|
|
799
|
-
size?: "default" | "sm" | "lg" | null | undefined;
|
|
801
|
+
size?: "default" | "xs" | "sm" | "lg" | null | undefined;
|
|
800
802
|
} & ClassProp) | undefined) => string;
|
|
801
803
|
|
|
802
804
|
export declare function Badge({ className, variant, children, ...props }: BadgeProps): JSX.Element;
|
|
@@ -1689,8 +1691,9 @@ declare namespace Content_4 {
|
|
|
1689
1691
|
}
|
|
1690
1692
|
|
|
1691
1693
|
/** The tooltip popup that displays additional information. */
|
|
1692
|
-
declare function Content_5({ className, position, side: _side, align: _align, sideOffset: _sideOffset, children, ...restProps }: React_2.ComponentProps<typeof Tooltip_2.Popup> & {
|
|
1694
|
+
declare function Content_5({ className, position, side: _side, align: _align, sideOffset: _sideOffset, noArrow, children, ...restProps }: React_2.ComponentProps<typeof Tooltip_2.Popup> & {
|
|
1693
1695
|
position?: PositionProps;
|
|
1696
|
+
noArrow?: boolean;
|
|
1694
1697
|
/** @deprecated Use `position={{ side }}` instead. */
|
|
1695
1698
|
side?: PositionProps["side"];
|
|
1696
1699
|
/** @deprecated Use `position={{ align }}` instead. */
|
|
@@ -2160,6 +2163,11 @@ declare interface DateBehaviorProps<T extends DateValue> {
|
|
|
2160
2163
|
hourCycle?: HourCycle;
|
|
2161
2164
|
hideTimeZone?: boolean;
|
|
2162
2165
|
placeholderValue?: DateValue;
|
|
2166
|
+
/**
|
|
2167
|
+
* First day of the week (0 = Sunday … 6 = Saturday); defaults to the locale.
|
|
2168
|
+
* Only affects the `w`/`k` (start/end of week) keyboard shortcuts here.
|
|
2169
|
+
*/
|
|
2170
|
+
firstDayOfWeek?: FirstDayOfWeek;
|
|
2163
2171
|
name?: string;
|
|
2164
2172
|
/** Accessible name when no visible `label` is provided (e.g. a compact filter input). */
|
|
2165
2173
|
"aria-label"?: string;
|
|
@@ -2189,7 +2197,7 @@ declare interface DateCellOptions {
|
|
|
2189
2197
|
* <DateField label="Created at" granularity="minute" />
|
|
2190
2198
|
* ```
|
|
2191
2199
|
*/
|
|
2192
|
-
export declare function DateField<T extends DateValue = DateValue>({ label, description, errorMessage, className, locale: localeProp, value, defaultValue, onChange, granularity, hourCycle, placeholderValue, isDisabled, isReadOnly, isInvalid, isRequired, autoFocus, name, "aria-label": ariaLabel, }: DateFieldProps<T>): JSX.Element;
|
|
2200
|
+
export declare function DateField<T extends DateValue = DateValue>({ label, description, errorMessage, className, locale: localeProp, value, defaultValue, onChange, granularity, hourCycle, placeholderValue, minValue, maxValue, isDateUnavailable, isDisabled, isReadOnly, isInvalid, isRequired, autoFocus, firstDayOfWeek, name, "aria-label": ariaLabel, }: DateFieldProps<T>): JSX.Element;
|
|
2193
2201
|
|
|
2194
2202
|
declare interface DateFieldMetaProps {
|
|
2195
2203
|
label?: LocalizedString;
|
|
@@ -2223,7 +2231,6 @@ declare type DateFormat = "short" | "medium" | "long" | "relative";
|
|
|
2223
2231
|
export declare function DatePicker<T extends DateValue = DateValue>({ label, description, errorMessage, className, locale: localeProp, timeZone: timeZoneProp, value, defaultValue, onChange, granularity, hourCycle, placeholderValue, minValue, maxValue, isDateUnavailable, isDisabled, isReadOnly, isInvalid, isRequired, autoFocus, firstDayOfWeek, name, "aria-label": ariaLabel, }: DatePickerProps<T>): JSX.Element;
|
|
2224
2232
|
|
|
2225
2233
|
export declare type DatePickerProps<T extends DateValue = DateValue> = DateFieldProps<T> & {
|
|
2226
|
-
firstDayOfWeek?: FirstDayOfWeek;
|
|
2227
2234
|
/** IANA timezone; defaults to the AppShell `timeZone`. */
|
|
2228
2235
|
timeZone?: string;
|
|
2229
2236
|
};
|
|
@@ -3087,10 +3094,9 @@ declare type FilterInputForFieldType<TFilterConfigType extends FilterConfig["typ
|
|
|
3087
3094
|
export declare type FilterOperator = OperatorForFilterType[FilterConfig["type"]];
|
|
3088
3095
|
|
|
3089
3096
|
/**
|
|
3090
|
-
*
|
|
3091
|
-
*
|
|
3092
|
-
*
|
|
3093
|
-
* (arrows, Home/End, PageUp/Down, Shift+PageUp/Down).
|
|
3097
|
+
* Week-start override for the `weekStart`/`weekEnd` shortcuts (and the calendar
|
|
3098
|
+
* grid). Defined here — with the resolver that consumes it — so the field and
|
|
3099
|
+
* calendar engines share one source of truth.
|
|
3094
3100
|
*/
|
|
3095
3101
|
declare type FirstDayOfWeek = "sun" | "mon" | "tue" | "wed" | "thu" | "fri" | "sat";
|
|
3096
3102
|
|
|
@@ -3482,6 +3488,15 @@ export declare function Input({ className, type, ...props }: InputProps): JSX.El
|
|
|
3482
3488
|
|
|
3483
3489
|
export declare type InputProps = React_2.ComponentProps<"input">;
|
|
3484
3490
|
|
|
3491
|
+
/**
|
|
3492
|
+
* Positions content across a time range inside a row.
|
|
3493
|
+
*/
|
|
3494
|
+
declare function Interval({ start, end, children, id, insetY, className, style, }: TimelineIntervalProps): JSX.Element;
|
|
3495
|
+
|
|
3496
|
+
declare namespace Interval {
|
|
3497
|
+
var displayName: string;
|
|
3498
|
+
}
|
|
3499
|
+
|
|
3485
3500
|
/**
|
|
3486
3501
|
* Check if an object type has no keys.
|
|
3487
3502
|
*/
|
|
@@ -3666,6 +3681,17 @@ declare namespace Legend {
|
|
|
3666
3681
|
|
|
3667
3682
|
export { Link }
|
|
3668
3683
|
|
|
3684
|
+
/**
|
|
3685
|
+
* Draws an orthogonal connector between two row items.
|
|
3686
|
+
*
|
|
3687
|
+
* If either referenced `Timeline.Interval` id is unresolved, nothing is rendered.
|
|
3688
|
+
*/
|
|
3689
|
+
declare function Link_2({ from, to, fromAnchor, toAnchor, arrow, gap, className, style, strokeWidth, }: TimelineLinkProps): React_2.ReactPortal | null;
|
|
3690
|
+
|
|
3691
|
+
declare namespace Link_2 {
|
|
3692
|
+
var displayName: string;
|
|
3693
|
+
}
|
|
3694
|
+
|
|
3669
3695
|
/** Options for `type: "link"` cells. `href` is required. */
|
|
3670
3696
|
declare interface LinkCellOptions<TRow extends Record<string, unknown>> {
|
|
3671
3697
|
/**
|
|
@@ -3857,6 +3883,11 @@ declare interface NumberCellOptions {
|
|
|
3857
3883
|
locale?: string;
|
|
3858
3884
|
}
|
|
3859
3885
|
|
|
3886
|
+
export declare type OpenCommandPaletteOptions = {
|
|
3887
|
+
/** Optional initial text to prefill into the palette input. */
|
|
3888
|
+
search?: string;
|
|
3889
|
+
};
|
|
3890
|
+
|
|
3860
3891
|
/**
|
|
3861
3892
|
* Resolve the operator union for a specific field within a filter type.
|
|
3862
3893
|
*/
|
|
@@ -4163,6 +4194,26 @@ declare namespace Root_12 {
|
|
|
4163
4194
|
var displayName: string;
|
|
4164
4195
|
}
|
|
4165
4196
|
|
|
4197
|
+
/**
|
|
4198
|
+
* Provides the shared time range used by all timeline primitives.
|
|
4199
|
+
*
|
|
4200
|
+
* Example:
|
|
4201
|
+
* ```tsx
|
|
4202
|
+
* <Timeline.Root start={projectStart} end={projectEnd}>
|
|
4203
|
+
* <Timeline.Viewport axis={axis}>
|
|
4204
|
+
* <Timeline.Row height={40}>
|
|
4205
|
+
* <Timeline.Interval start={task.start} end={task.end}>…</Timeline.Interval>
|
|
4206
|
+
* </Timeline.Row>
|
|
4207
|
+
* </Timeline.Viewport>
|
|
4208
|
+
* </Timeline.Root>
|
|
4209
|
+
* ```
|
|
4210
|
+
*/
|
|
4211
|
+
declare function Root_13({ start, end, children, className, style }: TimelineRootProps): JSX.Element;
|
|
4212
|
+
|
|
4213
|
+
declare namespace Root_13 {
|
|
4214
|
+
var displayName: string;
|
|
4215
|
+
}
|
|
4216
|
+
|
|
4166
4217
|
declare function Root_2<T extends ActivityCardBaseItem>({ items, title, maxVisible, overflowLabel, groupBy, className, children, }: ActivityCardRootProps<T>): JSX.Element;
|
|
4167
4218
|
|
|
4168
4219
|
declare namespace Root_2 {
|
|
@@ -4383,6 +4434,25 @@ declare namespace Row {
|
|
|
4383
4434
|
var displayName: string;
|
|
4384
4435
|
}
|
|
4385
4436
|
|
|
4437
|
+
/**
|
|
4438
|
+
* A single body row.
|
|
4439
|
+
*
|
|
4440
|
+
* Rows control vertical sizing and can optionally provide a background layer:
|
|
4441
|
+
* ```tsx
|
|
4442
|
+
* <Timeline.Row
|
|
4443
|
+
* height={40}
|
|
4444
|
+
* background={{ style: { background: "var(--muted)" } }}
|
|
4445
|
+
* >
|
|
4446
|
+
* <Timeline.Interval start={task.start} end={task.end}>…</Timeline.Interval>
|
|
4447
|
+
* </Timeline.Row>
|
|
4448
|
+
* ```
|
|
4449
|
+
*/
|
|
4450
|
+
declare function Row_2({ children, className, style, height, background }: TimelineRowProps): JSX.Element;
|
|
4451
|
+
|
|
4452
|
+
declare namespace Row_2 {
|
|
4453
|
+
var displayName: string;
|
|
4454
|
+
}
|
|
4455
|
+
|
|
4386
4456
|
/**
|
|
4387
4457
|
* A single row action definition for the actions column.
|
|
4388
4458
|
*/
|
|
@@ -5191,6 +5261,344 @@ declare type TabsVariant = "default" | "line" | "capsule";
|
|
|
5191
5261
|
|
|
5192
5262
|
export { Time }
|
|
5193
5263
|
|
|
5264
|
+
/**
|
|
5265
|
+
* Timeline primitives for building app-specific schedule, trace, and dependency UIs.
|
|
5266
|
+
*
|
|
5267
|
+
* Typical usage:
|
|
5268
|
+
* ```tsx
|
|
5269
|
+
* <Timeline.Root start={start} end={end}>
|
|
5270
|
+
* <Timeline.Viewport axis={axis} decorations={decorations}>
|
|
5271
|
+
* <Timeline.Row height={40} background={{ style: { background: "var(--muted)" } }}>
|
|
5272
|
+
* <Timeline.Interval id="task-1" start={task.start} end={task.end}>…</Timeline.Interval>
|
|
5273
|
+
* </Timeline.Row>
|
|
5274
|
+
* <Timeline.Link from="task-1" to="task-2" />
|
|
5275
|
+
* </Timeline.Viewport>
|
|
5276
|
+
* </Timeline.Root>
|
|
5277
|
+
* ```
|
|
5278
|
+
*/
|
|
5279
|
+
export declare const Timeline: {
|
|
5280
|
+
Root: typeof Root_13;
|
|
5281
|
+
Viewport: typeof Viewport;
|
|
5282
|
+
Row: typeof Row_2;
|
|
5283
|
+
Interval: typeof Interval;
|
|
5284
|
+
Link: typeof Link_2;
|
|
5285
|
+
};
|
|
5286
|
+
|
|
5287
|
+
/**
|
|
5288
|
+
* Axis configuration owned by `Timeline.Viewport`.
|
|
5289
|
+
*
|
|
5290
|
+
* Example:
|
|
5291
|
+
* ```tsx
|
|
5292
|
+
* axis={{
|
|
5293
|
+
* guides: boundaries.map((at) => ({
|
|
5294
|
+
* at,
|
|
5295
|
+
* axisStyle: { background: "var(--border)" },
|
|
5296
|
+
* bodyStyle: { background: "var(--border)" },
|
|
5297
|
+
* })),
|
|
5298
|
+
* levels: [
|
|
5299
|
+
* {
|
|
5300
|
+
* kind: "spans",
|
|
5301
|
+
* items: timeboxes,
|
|
5302
|
+
* },
|
|
5303
|
+
* ],
|
|
5304
|
+
* }}
|
|
5305
|
+
* ```
|
|
5306
|
+
*/
|
|
5307
|
+
export declare interface TimelineAxis {
|
|
5308
|
+
/** Boundary lines rendered in the axis and/or body. */
|
|
5309
|
+
guides?: TimelineGuide[];
|
|
5310
|
+
/** Stacked header levels rendered above the body. Defaults to `[]` when omitted. */
|
|
5311
|
+
levels?: TimelineAxisLevel[];
|
|
5312
|
+
/** Optional class applied to the axis container. */
|
|
5313
|
+
className?: string;
|
|
5314
|
+
}
|
|
5315
|
+
|
|
5316
|
+
/**
|
|
5317
|
+
* One stacked axis level.
|
|
5318
|
+
*
|
|
5319
|
+
* Levels let an app compose multi-level headers such as year → month or a
|
|
5320
|
+
* single timebox row such as half-hour slots.
|
|
5321
|
+
*/
|
|
5322
|
+
export declare type TimelineAxisLevel = (TimelineAxisLevelBase & {
|
|
5323
|
+
/** Interval labels rendered across a time range. */
|
|
5324
|
+
kind: "spans";
|
|
5325
|
+
/** Span items to render in this level. */
|
|
5326
|
+
items: TimelineAxisSpan[];
|
|
5327
|
+
/** Optional class applied to every span in the level. */
|
|
5328
|
+
itemClassName?: string;
|
|
5329
|
+
/** Optional style applied to every span in the level. */
|
|
5330
|
+
itemStyle?: React_2.CSSProperties;
|
|
5331
|
+
}) | (TimelineAxisLevelBase & {
|
|
5332
|
+
/** Point labels rendered at specific times. */
|
|
5333
|
+
kind: "ticks";
|
|
5334
|
+
/** Tick items to render in this level. */
|
|
5335
|
+
items: TimelineAxisTick[];
|
|
5336
|
+
/** Horizontal anchor used when placing each tick label. */
|
|
5337
|
+
labelAlign?: Anchor;
|
|
5338
|
+
});
|
|
5339
|
+
|
|
5340
|
+
declare type TimelineAxisLevelBase = {
|
|
5341
|
+
/** Height of this axis level in pixels. Defaults to `28`. */
|
|
5342
|
+
height?: number;
|
|
5343
|
+
/** Optional class applied to the level container. */
|
|
5344
|
+
className?: string;
|
|
5345
|
+
};
|
|
5346
|
+
|
|
5347
|
+
/**
|
|
5348
|
+
* A labeled time range rendered inside an axis level.
|
|
5349
|
+
*
|
|
5350
|
+
* Use spans for "timeboxes" such as months, half-hours, sprints, or any
|
|
5351
|
+
* other interval that should be labeled between boundary guides.
|
|
5352
|
+
*/
|
|
5353
|
+
export declare interface TimelineAxisSpan {
|
|
5354
|
+
/** Stable React key. Falls back to a start/end-based key when omitted. */
|
|
5355
|
+
key?: React_2.Key;
|
|
5356
|
+
/** Start of the timebox. Accepts a `Date` or a millisecond timestamp. */
|
|
5357
|
+
start: TimeValue;
|
|
5358
|
+
/** End of the timebox. Accepts a `Date` or a millisecond timestamp. */
|
|
5359
|
+
end: TimeValue;
|
|
5360
|
+
/** Label rendered inside the span. */
|
|
5361
|
+
label?: React_2.ReactNode;
|
|
5362
|
+
/** Optional class applied to the positioned span element. */
|
|
5363
|
+
className?: string;
|
|
5364
|
+
/** Optional inline style applied to the positioned span element. */
|
|
5365
|
+
style?: React_2.CSSProperties;
|
|
5366
|
+
}
|
|
5367
|
+
|
|
5368
|
+
/**
|
|
5369
|
+
* A labeled point in an axis level.
|
|
5370
|
+
*
|
|
5371
|
+
* Ticks are useful for point-in-time labels such as milestones or specific
|
|
5372
|
+
* timestamps. For boxed labels between boundaries, prefer `TimelineAxisSpan`.
|
|
5373
|
+
*/
|
|
5374
|
+
export declare interface TimelineAxisTick {
|
|
5375
|
+
/** Stable React key. Falls back to an `at`-based key when omitted. */
|
|
5376
|
+
key?: React_2.Key;
|
|
5377
|
+
/** Point in time represented by this tick. */
|
|
5378
|
+
at: TimeValue;
|
|
5379
|
+
/** Label rendered for the tick. */
|
|
5380
|
+
label?: React_2.ReactNode;
|
|
5381
|
+
/**
|
|
5382
|
+
* Optional custom label position.
|
|
5383
|
+
*
|
|
5384
|
+
* Defaults to `at`. Use this when the tick represents one time but its label
|
|
5385
|
+
* should be positioned elsewhere.
|
|
5386
|
+
*/
|
|
5387
|
+
labelAt?: TimeValue;
|
|
5388
|
+
/** Optional class applied to the tick container. */
|
|
5389
|
+
className?: string;
|
|
5390
|
+
/** Optional inline style applied to the tick container. */
|
|
5391
|
+
style?: React_2.CSSProperties;
|
|
5392
|
+
}
|
|
5393
|
+
|
|
5394
|
+
/**
|
|
5395
|
+
* A decorative band rendered behind the timeline body.
|
|
5396
|
+
*
|
|
5397
|
+
* Useful for blackout windows, maintenance ranges, release freezes, or any
|
|
5398
|
+
* other highlighted interval.
|
|
5399
|
+
*/
|
|
5400
|
+
export declare interface TimelineBand {
|
|
5401
|
+
/** Stable React key. Falls back to a start/end-based key when omitted. */
|
|
5402
|
+
key?: React_2.Key;
|
|
5403
|
+
/** Start of the band. */
|
|
5404
|
+
start: TimeValue;
|
|
5405
|
+
/** End of the band. */
|
|
5406
|
+
end: TimeValue;
|
|
5407
|
+
/** Optional background color convenience prop. */
|
|
5408
|
+
color?: string;
|
|
5409
|
+
/** Optional class applied to the band element. */
|
|
5410
|
+
className?: string;
|
|
5411
|
+
/** Optional inline style applied to the band element. */
|
|
5412
|
+
style?: React_2.CSSProperties;
|
|
5413
|
+
}
|
|
5414
|
+
|
|
5415
|
+
/**
|
|
5416
|
+
* Decorative layers rendered by `Timeline.Viewport`.
|
|
5417
|
+
*/
|
|
5418
|
+
export declare interface TimelineDecorations {
|
|
5419
|
+
/** Background range highlights rendered behind rows. */
|
|
5420
|
+
bands?: TimelineBand[];
|
|
5421
|
+
/** Vertical markers rendered in the axis and/or body. */
|
|
5422
|
+
markers?: TimelineMarker[];
|
|
5423
|
+
}
|
|
5424
|
+
|
|
5425
|
+
/**
|
|
5426
|
+
* A vertical guide line projected onto the axis and/or the timeline body.
|
|
5427
|
+
*
|
|
5428
|
+
* Guides are the timeline's "boundaries". Apps usually derive them from their
|
|
5429
|
+
* own scale logic, then pair them with axis spans to label the ranges between
|
|
5430
|
+
* those boundaries.
|
|
5431
|
+
*/
|
|
5432
|
+
export declare interface TimelineGuide {
|
|
5433
|
+
/** Stable React key. Falls back to an `at`-based key when omitted. */
|
|
5434
|
+
key?: React_2.Key;
|
|
5435
|
+
/** Time position for the guide line. */
|
|
5436
|
+
at: TimeValue;
|
|
5437
|
+
/** Optional class applied to the guide inside the axis area. */
|
|
5438
|
+
axisClassName?: string;
|
|
5439
|
+
/** Optional inline style applied to the guide inside the axis area. */
|
|
5440
|
+
axisStyle?: React_2.CSSProperties;
|
|
5441
|
+
/** Optional class applied to the guide inside the body area. */
|
|
5442
|
+
bodyClassName?: string;
|
|
5443
|
+
/** Optional inline style applied to the guide inside the body area. */
|
|
5444
|
+
bodyStyle?: React_2.CSSProperties;
|
|
5445
|
+
}
|
|
5446
|
+
|
|
5447
|
+
export declare type TimelineIntervalProps = {
|
|
5448
|
+
/** Start of the interval. */
|
|
5449
|
+
start: TimeValue;
|
|
5450
|
+
/** End of the interval. */
|
|
5451
|
+
end: TimeValue;
|
|
5452
|
+
/** Rendered content for the interval. */
|
|
5453
|
+
children: React_2.ReactNode;
|
|
5454
|
+
/** Optional stable id used by `Timeline.Link`. */
|
|
5455
|
+
id?: string;
|
|
5456
|
+
/** Top and bottom inset in pixels within the row. Defaults to `0`. */
|
|
5457
|
+
insetY?: number;
|
|
5458
|
+
/** Optional class applied to the positioned interval container. */
|
|
5459
|
+
className?: string;
|
|
5460
|
+
/** Optional inline style applied to the positioned interval container. */
|
|
5461
|
+
style?: React_2.CSSProperties;
|
|
5462
|
+
};
|
|
5463
|
+
|
|
5464
|
+
/**
|
|
5465
|
+
* Shared defaults for `Timeline.Link` instances inside one viewport.
|
|
5466
|
+
*/
|
|
5467
|
+
export declare interface TimelineLinkDefaults {
|
|
5468
|
+
/** Link routing strategy. Only orthogonal routing is currently supported. */
|
|
5469
|
+
routing?: "orthogonal";
|
|
5470
|
+
/** Whether links end with an arrow marker. Defaults to `true`. */
|
|
5471
|
+
arrow?: boolean;
|
|
5472
|
+
/** Horizontal gap used when routing out of and into items. Defaults to `16`. */
|
|
5473
|
+
gap?: number;
|
|
5474
|
+
/** Optional class applied to each link SVG when the link does not override it. */
|
|
5475
|
+
className?: string;
|
|
5476
|
+
/**
|
|
5477
|
+
* Optional inline style applied to each link SVG when the link does not override it.
|
|
5478
|
+
*
|
|
5479
|
+
* Prefer an opaque `color` here over alpha-based text colors when overlapping links
|
|
5480
|
+
* should not appear darker.
|
|
5481
|
+
*/
|
|
5482
|
+
style?: React_2.CSSProperties;
|
|
5483
|
+
/** Optional stroke width used by each link when the link does not override it. */
|
|
5484
|
+
strokeWidth?: number;
|
|
5485
|
+
}
|
|
5486
|
+
|
|
5487
|
+
export declare type TimelineLinkProps = {
|
|
5488
|
+
/** Source `Timeline.Interval` id. */
|
|
5489
|
+
from: string;
|
|
5490
|
+
/** Target `Timeline.Interval` id. */
|
|
5491
|
+
to: string;
|
|
5492
|
+
/** Source anchor used for routing. Defaults to `"end"`. */
|
|
5493
|
+
fromAnchor?: Anchor;
|
|
5494
|
+
/** Target anchor used for routing. Defaults to `"start"`. */
|
|
5495
|
+
toAnchor?: Anchor;
|
|
5496
|
+
/** Overrides the viewport default arrow visibility. */
|
|
5497
|
+
arrow?: boolean;
|
|
5498
|
+
/** Overrides the viewport default routing gap. */
|
|
5499
|
+
gap?: number;
|
|
5500
|
+
/** Optional class applied to the link SVG. */
|
|
5501
|
+
className?: string;
|
|
5502
|
+
/** Optional inline style applied to the link SVG. */
|
|
5503
|
+
style?: React_2.CSSProperties;
|
|
5504
|
+
/** Optional stroke width for the link path. */
|
|
5505
|
+
strokeWidth?: number;
|
|
5506
|
+
};
|
|
5507
|
+
|
|
5508
|
+
/**
|
|
5509
|
+
* A decorative vertical marker rendered in the axis and/or body.
|
|
5510
|
+
*/
|
|
5511
|
+
export declare interface TimelineMarker {
|
|
5512
|
+
/** Stable React key. Falls back to an `at`-based key when omitted. */
|
|
5513
|
+
key?: React_2.Key;
|
|
5514
|
+
/** Time position for the marker. */
|
|
5515
|
+
at: TimeValue;
|
|
5516
|
+
/** Optional line color convenience prop. */
|
|
5517
|
+
color?: string;
|
|
5518
|
+
/** Optional marker label. */
|
|
5519
|
+
label?: React_2.ReactNode;
|
|
5520
|
+
/** Optional class applied to the outer marker wrapper. */
|
|
5521
|
+
className?: string;
|
|
5522
|
+
/** Optional inline style applied to the outer marker wrapper. */
|
|
5523
|
+
style?: React_2.CSSProperties;
|
|
5524
|
+
/** Optional class applied to the marker line. */
|
|
5525
|
+
lineClassName?: string;
|
|
5526
|
+
/** Optional inline style applied to the marker line. */
|
|
5527
|
+
lineStyle?: React_2.CSSProperties;
|
|
5528
|
+
/** Optional class applied to the marker label. */
|
|
5529
|
+
labelClassName?: string;
|
|
5530
|
+
/** Optional inline style applied to the marker label. */
|
|
5531
|
+
labelStyle?: React_2.CSSProperties;
|
|
5532
|
+
/** Controls where the marker is rendered. Defaults to `"body"`. */
|
|
5533
|
+
placement?: "axis" | "body" | "both";
|
|
5534
|
+
}
|
|
5535
|
+
|
|
5536
|
+
export declare type TimelineRootProps = {
|
|
5537
|
+
/** Inclusive start of the overall timeline range. */
|
|
5538
|
+
start: TimeValue;
|
|
5539
|
+
/** Inclusive end of the overall timeline range. */
|
|
5540
|
+
end: TimeValue;
|
|
5541
|
+
/** Timeline subtree. Usually contains one `Timeline.Viewport`. */
|
|
5542
|
+
children: React_2.ReactNode;
|
|
5543
|
+
/** Optional class applied to the root container. */
|
|
5544
|
+
className?: string;
|
|
5545
|
+
/** Optional inline style applied to the root container. */
|
|
5546
|
+
style?: React_2.CSSProperties;
|
|
5547
|
+
};
|
|
5548
|
+
|
|
5549
|
+
/**
|
|
5550
|
+
* Background content rendered for a `Timeline.Row` in a dedicated layer.
|
|
5551
|
+
*
|
|
5552
|
+
* Use this when a row background should sit behind guides but in front of body
|
|
5553
|
+
* bands. This is different from `Timeline.Row`'s own `style`, which affects the
|
|
5554
|
+
* row content container itself.
|
|
5555
|
+
*/
|
|
5556
|
+
export declare interface TimelineRowBackground {
|
|
5557
|
+
/** Optional class applied to the background layer element. */
|
|
5558
|
+
className?: string;
|
|
5559
|
+
/** Optional inline style applied to the background layer element. */
|
|
5560
|
+
style?: React_2.CSSProperties;
|
|
5561
|
+
}
|
|
5562
|
+
|
|
5563
|
+
export declare type TimelineRowProps = {
|
|
5564
|
+
/** Row contents, typically intervals. */
|
|
5565
|
+
children: React_2.ReactNode;
|
|
5566
|
+
/** Optional class applied to the row content container. */
|
|
5567
|
+
className?: string;
|
|
5568
|
+
/** Optional inline style applied to the row content container. */
|
|
5569
|
+
style?: React_2.CSSProperties;
|
|
5570
|
+
/** Row height in pixels. Defaults to `32`. */
|
|
5571
|
+
height?: number;
|
|
5572
|
+
/**
|
|
5573
|
+
* Optional background rendered in a dedicated layer.
|
|
5574
|
+
*
|
|
5575
|
+
* Use this instead of `style.background` when guides should remain visible in
|
|
5576
|
+
* front of the row background.
|
|
5577
|
+
*/
|
|
5578
|
+
background?: TimelineRowBackground | null;
|
|
5579
|
+
};
|
|
5580
|
+
|
|
5581
|
+
export declare type TimelineViewportProps = {
|
|
5582
|
+
/** Timeline content. Rows and links can be passed in any order. */
|
|
5583
|
+
children: React_2.ReactNode;
|
|
5584
|
+
/** Optional fixed canvas width in pixels for horizontally scrollable timelines. */
|
|
5585
|
+
canvasWidth?: number;
|
|
5586
|
+
/** Keeps the axis pinned to the top of the viewport when scrolling vertically. */
|
|
5587
|
+
stickyAxis?: boolean;
|
|
5588
|
+
/** Axis configuration for guides and header levels. */
|
|
5589
|
+
axis?: TimelineAxis;
|
|
5590
|
+
/** Decorative layers such as bands and markers. */
|
|
5591
|
+
decorations?: TimelineDecorations;
|
|
5592
|
+
/** Shared defaults applied to `Timeline.Link` nodes inside this viewport. */
|
|
5593
|
+
linkDefaults?: TimelineLinkDefaults;
|
|
5594
|
+
/** Optional class applied to the scroll viewport. */
|
|
5595
|
+
className?: string;
|
|
5596
|
+
/** Optional inline style applied to the scroll viewport. */
|
|
5597
|
+
style?: React_2.CSSProperties;
|
|
5598
|
+
};
|
|
5599
|
+
|
|
5600
|
+
declare type TimeValue = Date | number;
|
|
5601
|
+
|
|
5194
5602
|
/**
|
|
5195
5603
|
* Resolved timezone object with helpers bound to the configured timezone.
|
|
5196
5604
|
*/
|
|
@@ -6090,6 +6498,14 @@ export { useLocation }
|
|
|
6090
6498
|
|
|
6091
6499
|
export { useNavigate }
|
|
6092
6500
|
|
|
6501
|
+
/**
|
|
6502
|
+
* Returns a function that opens the CommandPalette.
|
|
6503
|
+
*
|
|
6504
|
+
* Optionally accepts an initial search string, including prefix-activated
|
|
6505
|
+
* search modes such as `PO: alice`.
|
|
6506
|
+
*/
|
|
6507
|
+
export declare function useOpenCommandPalette(): (options?: OpenCommandPaletteOptions) => void;
|
|
6508
|
+
|
|
6093
6509
|
/**
|
|
6094
6510
|
* Override the breadcrumb title for the current page.
|
|
6095
6511
|
*
|
|
@@ -6278,6 +6694,28 @@ declare namespace Validity {
|
|
|
6278
6694
|
var displayName: string;
|
|
6279
6695
|
}
|
|
6280
6696
|
|
|
6697
|
+
/**
|
|
6698
|
+
* Owns scrolling, axis rendering, decoration layers, and link layering.
|
|
6699
|
+
*
|
|
6700
|
+
* Example:
|
|
6701
|
+
* ```tsx
|
|
6702
|
+
* <Timeline.Viewport
|
|
6703
|
+
* canvasWidth={1200}
|
|
6704
|
+
* axis={{ guides, levels }}
|
|
6705
|
+
* decorations={{ bands }}
|
|
6706
|
+
* linkDefaults={{ style: { color: "var(--muted-foreground)" }, strokeWidth: 1.5 }}
|
|
6707
|
+
* >
|
|
6708
|
+
* {rows}
|
|
6709
|
+
* {links}
|
|
6710
|
+
* </Timeline.Viewport>
|
|
6711
|
+
* ```
|
|
6712
|
+
*/
|
|
6713
|
+
declare function Viewport({ children, canvasWidth, stickyAxis, axis, decorations, linkDefaults, className, style, }: TimelineViewportProps): JSX.Element;
|
|
6714
|
+
|
|
6715
|
+
declare namespace Viewport {
|
|
6716
|
+
var displayName: string;
|
|
6717
|
+
}
|
|
6718
|
+
|
|
6281
6719
|
/**
|
|
6282
6720
|
* Conditionally render children based on guard evaluation.
|
|
6283
6721
|
*
|