@taskctrl/canvas-timeline 0.4.5 → 0.6.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/canvas/GridLayer.d.ts +1 -1
- package/dist/canvas-timeline.cjs.js +1 -1
- package/dist/canvas-timeline.cjs.js.map +1 -1
- package/dist/canvas-timeline.es.js +1106 -877
- package/dist/canvas-timeline.es.js.map +1 -1
- package/dist/core/ViewState.d.ts +5 -0
- package/dist/dom/DateHeader.d.ts +2 -1
- package/dist/dom/Sidebar.d.ts +2 -1
- package/dist/dom/TimelineHeaders.d.ts +2 -1
- package/dist/types.d.ts +8 -0
- package/dist/utils/timezone.d.ts +2 -0
- package/package.json +1 -1
package/dist/core/ViewState.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export interface ViewStateConfig {
|
|
|
8
8
|
groupCount: number;
|
|
9
9
|
buffer: number;
|
|
10
10
|
scrollTop: number;
|
|
11
|
+
groupHeights?: number[];
|
|
11
12
|
}
|
|
12
13
|
export declare class ViewState {
|
|
13
14
|
visibleTimeStart: number;
|
|
@@ -19,14 +20,18 @@ export declare class ViewState {
|
|
|
19
20
|
groupCount: number;
|
|
20
21
|
buffer: number;
|
|
21
22
|
scrollTop: number;
|
|
23
|
+
groupHeights: number[] | null;
|
|
22
24
|
private visibleDuration;
|
|
23
25
|
private pixelsPerMs;
|
|
26
|
+
private groupYOffsets;
|
|
24
27
|
constructor(config: ViewStateConfig);
|
|
25
28
|
update(params: Partial<ViewStateConfig>): void;
|
|
29
|
+
private recomputeGroupYOffsets;
|
|
26
30
|
timeToX(time: number): number;
|
|
27
31
|
xToTime(x: number): number;
|
|
28
32
|
yToGroupIndex(y: number): number;
|
|
29
33
|
groupIndexToY(index: number): number;
|
|
34
|
+
groupIndexToHeight(index: number): number;
|
|
30
35
|
getBufferBounds(): {
|
|
31
36
|
bufferStart: number;
|
|
32
37
|
bufferEnd: number;
|
package/dist/dom/DateHeader.d.ts
CHANGED
|
@@ -13,8 +13,9 @@ export interface DateHeaderProps {
|
|
|
13
13
|
/** Minimum cell width in pixels. Header auto-hides when cells are narrower. Set to 0 to disable. */
|
|
14
14
|
minCellWidth?: number;
|
|
15
15
|
onZoomToInterval?: (start: number, end: number) => void;
|
|
16
|
+
timezone?: string;
|
|
16
17
|
}
|
|
17
|
-
export declare function DateHeader({ unit, visibleTimeStart, visibleTimeEnd, canvasWidth, theme, height, className, labelFormat, onIntervalClick, minCellWidth, onZoomToInterval, }: DateHeaderProps): import("react/jsx-runtime").JSX.Element | null;
|
|
18
|
+
export declare function DateHeader({ unit, visibleTimeStart, visibleTimeEnd, canvasWidth, theme, height, className, labelFormat, onIntervalClick, minCellWidth, onZoomToInterval, timezone, }: DateHeaderProps): import("react/jsx-runtime").JSX.Element | null;
|
|
18
19
|
export declare namespace DateHeader {
|
|
19
20
|
var displayName: string;
|
|
20
21
|
}
|
package/dist/dom/Sidebar.d.ts
CHANGED
|
@@ -4,11 +4,12 @@ interface SidebarProps {
|
|
|
4
4
|
groups: Group[];
|
|
5
5
|
width: number;
|
|
6
6
|
lineHeight: number;
|
|
7
|
+
groupHeights?: number[];
|
|
7
8
|
scrollTop: number;
|
|
8
9
|
canvasHeight: number;
|
|
9
10
|
theme: TimelineTheme;
|
|
10
11
|
groupRenderer: (group: Group) => React.ReactNode;
|
|
11
12
|
onScroll: (scrollTop: number) => void;
|
|
12
13
|
}
|
|
13
|
-
export declare function Sidebar({ groups, width, lineHeight, scrollTop, canvasHeight, theme, groupRenderer, onScroll, }: SidebarProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare function Sidebar({ groups, width, lineHeight, groupHeights, scrollTop, canvasHeight, theme, groupRenderer, onScroll, }: SidebarProps): import("react/jsx-runtime").JSX.Element;
|
|
14
15
|
export {};
|
|
@@ -11,8 +11,9 @@ export interface TimelineHeadersProps {
|
|
|
11
11
|
canvasWidth?: number;
|
|
12
12
|
sidebarWidth?: number;
|
|
13
13
|
onZoomToInterval?: (start: number, end: number) => void;
|
|
14
|
+
timezone?: string;
|
|
14
15
|
}
|
|
15
|
-
export declare function TimelineHeaders({ children, theme, className, classNames: _classNames, style, visibleTimeStart, visibleTimeEnd, canvasWidth, sidebarWidth, onZoomToInterval }: TimelineHeadersProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export declare function TimelineHeaders({ children, theme, className, classNames: _classNames, style, visibleTimeStart, visibleTimeEnd, canvasWidth, sidebarWidth, onZoomToInterval, timezone }: TimelineHeadersProps): import("react/jsx-runtime").JSX.Element;
|
|
16
17
|
export declare namespace TimelineHeaders {
|
|
17
18
|
var displayName: string;
|
|
18
19
|
}
|
package/dist/types.d.ts
CHANGED
|
@@ -151,6 +151,14 @@ export interface CanvasTimelineProps {
|
|
|
151
151
|
onReady?: (api: CanvasTimelineRef) => void;
|
|
152
152
|
/** Dev-only: show a version + build-time badge in the top-left corner.
|
|
153
153
|
* Wire to your app's dev flag, e.g. `devBadge={import.meta.env.DEV}`. */
|
|
154
|
+
/** Maximum visible height for the timeline body. Accepts a number (px) or
|
|
155
|
+
* a CSS string like `'calc(100vh - 98px)'`. When set, the canvas and sidebar
|
|
156
|
+
* are clipped and internally scrollable via wheel, drag, or touch. */
|
|
157
|
+
maxHeight?: number | string;
|
|
158
|
+
/** IANA timezone string (e.g. "America/New_York", "UTC").
|
|
159
|
+
* When set, grid lines, headers, and day styling render in this timezone.
|
|
160
|
+
* Defaults to the browser's local timezone. */
|
|
161
|
+
timezone?: string;
|
|
154
162
|
devBadge?: boolean;
|
|
155
163
|
children?: React.ReactNode;
|
|
156
164
|
}
|