eidotter 0.13.2 → 0.15.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/LICENSE.md +0 -0
- package/README.md +0 -0
- package/dist/components/Accordion/components/AccordionFill.d.ts +0 -0
- package/dist/components/Accordion/components/Section.d.ts +0 -0
- package/dist/components/Accordion/components/index.d.ts +0 -0
- package/dist/components/Accordion/index.d.ts +0 -0
- package/dist/components/Alert/components/Alert.d.ts +0 -0
- package/dist/components/Alert/components/index.d.ts +0 -0
- package/dist/components/Alert/index.d.ts +0 -0
- package/dist/components/Badge/components/Badge.d.ts +0 -0
- package/dist/components/Badge/components/index.d.ts +0 -0
- package/dist/components/Badge/index.d.ts +0 -0
- package/dist/components/Breadcrumb/components/Breadcrumb.d.ts +0 -0
- package/dist/components/Breadcrumb/components/index.d.ts +0 -0
- package/dist/components/Breadcrumb/index.d.ts +0 -0
- package/dist/components/Button/components/Button.d.ts +0 -0
- package/dist/components/Button/components/index.d.ts +0 -0
- package/dist/components/Button/index.d.ts +0 -0
- package/dist/components/Card/components/Card.d.ts +0 -0
- package/dist/components/Card/components/index.d.ts +0 -0
- package/dist/components/Card/index.d.ts +0 -0
- package/dist/components/Chat/components/ChatContainer.d.ts +36 -0
- package/dist/components/Chat/components/ChatHistory.d.ts +32 -0
- package/dist/components/Chat/components/ChatInput.d.ts +22 -0
- package/dist/components/Chat/components/ChatMessage.d.ts +25 -0
- package/dist/components/Chat/components/index.d.ts +8 -0
- package/dist/components/Chat/index.d.ts +2 -0
- package/dist/components/Checkbox/components/Checkbox.d.ts +0 -0
- package/dist/components/Checkbox/components/index.d.ts +0 -0
- package/dist/components/Checkbox/index.d.ts +0 -0
- package/dist/components/CommandPrompt/components/CommandPrompt.d.ts +1 -0
- package/dist/components/CommandPrompt/components/index.d.ts +0 -0
- package/dist/components/CommandPrompt/index.d.ts +0 -0
- package/dist/components/FilterBar/components/FilterBar.d.ts +0 -0
- package/dist/components/FilterBar/components/index.d.ts +0 -0
- package/dist/components/FilterBar/index.d.ts +0 -0
- package/dist/components/Footer/components/Footer.d.ts +31 -0
- package/dist/components/Footer/components/index.d.ts +2 -0
- package/dist/components/Footer/index.d.ts +2 -0
- package/dist/components/Icon/components/Icon.d.ts +0 -0
- package/dist/components/Icon/components/index.d.ts +0 -0
- package/dist/components/Icon/index.d.ts +0 -0
- package/dist/components/InlineExpand/components/InlineExpand.d.ts +0 -0
- package/dist/components/InlineExpand/components/index.d.ts +0 -0
- package/dist/components/InlineExpand/index.d.ts +0 -0
- package/dist/components/Input/components/Input.d.ts +0 -0
- package/dist/components/Input/components/index.d.ts +0 -0
- package/dist/components/Input/index.d.ts +0 -0
- package/dist/components/Modal/components/Modal.d.ts +0 -0
- package/dist/components/Modal/components/index.d.ts +0 -0
- package/dist/components/Modal/index.d.ts +0 -0
- package/dist/components/Nav/components/Nav.d.ts +0 -0
- package/dist/components/Nav/components/index.d.ts +0 -0
- package/dist/components/Nav/index.d.ts +0 -0
- package/dist/components/Progress/components/Progress.d.ts +0 -0
- package/dist/components/Progress/components/index.d.ts +0 -0
- package/dist/components/Progress/index.d.ts +0 -0
- package/dist/components/RetroEffects/components/RetroEffects.d.ts +0 -0
- package/dist/components/RetroEffects/components/index.d.ts +0 -0
- package/dist/components/RetroEffects/index.d.ts +0 -0
- package/dist/components/Separator/components/Separator.d.ts +0 -0
- package/dist/components/Separator/components/index.d.ts +0 -0
- package/dist/components/Separator/index.d.ts +0 -0
- package/dist/components/Stat/components/Stat.d.ts +0 -0
- package/dist/components/Stat/components/index.d.ts +0 -0
- package/dist/components/Stat/index.d.ts +0 -0
- package/dist/components/Switch/components/Switch.d.ts +0 -0
- package/dist/components/Switch/components/index.d.ts +0 -0
- package/dist/components/Switch/index.d.ts +0 -0
- package/dist/components/Tabs/components/Tabs.d.ts +0 -0
- package/dist/components/Tabs/components/index.d.ts +0 -0
- package/dist/components/Tabs/index.d.ts +0 -0
- package/dist/components/Tag/components/Tag.d.ts +0 -0
- package/dist/components/Tag/components/TagGroup.d.ts +0 -0
- package/dist/components/Tag/components/index.d.ts +0 -0
- package/dist/components/Tag/index.d.ts +0 -0
- package/dist/components/Terminal/components/Terminal.d.ts +4 -0
- package/dist/components/Terminal/components/index.d.ts +0 -0
- package/dist/components/Terminal/index.d.ts +0 -0
- package/dist/components/TextScramble/components/TextScramble.d.ts +0 -0
- package/dist/components/TextScramble/components/index.d.ts +0 -0
- package/dist/components/TextScramble/index.d.ts +0 -0
- package/dist/components/TimelineContainer/components/TimelineAxis.d.ts +0 -0
- package/dist/components/TimelineContainer/components/TimelineContainer.d.ts +9 -2
- package/dist/components/TimelineContainer/components/TimelineContent.d.ts +0 -0
- package/dist/components/TimelineContainer/components/TimelineEntryCard.d.ts +6 -4
- package/dist/components/TimelineContainer/components/ZoomControls.d.ts +0 -0
- package/dist/components/TimelineContainer/components/index.d.ts +1 -1
- package/dist/components/TimelineContainer/components/timelineUtils.d.ts +0 -0
- package/dist/components/TimelineContainer/components/timelineUtils.test.d.ts +0 -0
- package/dist/components/TimelineContainer/components/types.d.ts +14 -8
- package/dist/components/TimelineContainer/components/useSelection.d.ts +0 -0
- package/dist/components/TimelineContainer/components/useSelection.test.d.ts +0 -0
- package/dist/components/TimelineContainer/components/useZoom.d.ts +0 -0
- package/dist/components/TimelineContainer/components/useZoom.test.d.ts +0 -0
- package/dist/components/TimelineContainer/components/views/DayView.d.ts +0 -0
- package/dist/components/TimelineContainer/components/views/HourView.d.ts +0 -0
- package/dist/components/TimelineContainer/components/views/MonthView.d.ts +0 -0
- package/dist/components/TimelineContainer/components/views/YearView.d.ts +0 -0
- package/dist/components/TimelineContainer/components/views/index.d.ts +0 -0
- package/dist/components/TimelineContainer/index.d.ts +1 -1
- package/dist/components/TimelineEntry/components/TimelineEntry.d.ts +0 -0
- package/dist/components/TimelineEntry/components/index.d.ts +0 -0
- package/dist/components/TimelineEntry/index.d.ts +0 -0
- package/dist/components/TimelineList/components/TimelineList.d.ts +9 -14
- package/dist/components/TimelineList/components/index.d.ts +0 -0
- package/dist/components/TimelineList/index.d.ts +0 -0
- package/dist/components/TimelineNode/components/TimelineNode.d.ts +0 -0
- package/dist/components/TimelineNode/components/index.d.ts +0 -0
- package/dist/components/TimelineNode/index.d.ts +0 -0
- package/dist/components/registry.d.ts +0 -0
- package/dist/eidotter.css +1 -1
- package/dist/index.d.ts +6 -2
- package/dist/index.es.js +981 -759
- package/dist/index.umd.js +4 -4
- package/guidelines/README.md +0 -0
- package/guidelines/components.md +0 -0
- package/guidelines/patterns.md +0 -0
- package/package.json +1 -1
- package/src/styles/theme.amber-mono.css +0 -0
- package/src/styles/theme.cga-amber.css +0 -0
- package/src/styles/theme.cga-mode4-p0.css +0 -0
- package/src/styles/theme.cga-mode4-p1.css +0 -0
- package/src/styles/theme.cga-mode5.css +0 -0
- package/src/styles/tokens.css +0 -0
- package/tailwind.preset.cjs +0 -0
package/LICENSE.md
CHANGED
|
File without changes
|
package/README.md
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './ChatContainer.css';
|
|
3
|
+
import { ChatMessageEntry } from './ChatHistory';
|
|
4
|
+
export interface ChatContainerProps {
|
|
5
|
+
/** Array of messages to display */
|
|
6
|
+
messages: ChatMessageEntry[];
|
|
7
|
+
/** Called when the user sends a message */
|
|
8
|
+
onSend: (message: string) => void;
|
|
9
|
+
/** Whether the last assistant message is still streaming */
|
|
10
|
+
isStreaming?: boolean;
|
|
11
|
+
/** Prompt character for the input field */
|
|
12
|
+
inputPrompt?: string;
|
|
13
|
+
/** Prefix shown before user messages */
|
|
14
|
+
userPrefix?: string;
|
|
15
|
+
/** Prefix shown before assistant messages */
|
|
16
|
+
assistantPrefix?: string;
|
|
17
|
+
/** Placeholder text for the input field */
|
|
18
|
+
placeholder?: string;
|
|
19
|
+
/** Whether the input is disabled */
|
|
20
|
+
disabled?: boolean;
|
|
21
|
+
/** Additional CSS class name */
|
|
22
|
+
className?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Complete DOS-themed chat interface composing ChatHistory and ChatInput.
|
|
26
|
+
*
|
|
27
|
+
* Designed to be placed inside a Terminal component for the full DOS window
|
|
28
|
+
* experience, but works standalone too.
|
|
29
|
+
*
|
|
30
|
+
* ```tsx
|
|
31
|
+
* <Terminal title="ADOS Chat">
|
|
32
|
+
* <ChatContainer messages={messages} onSend={send} isStreaming={loading} />
|
|
33
|
+
* </Terminal>
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export declare const ChatContainer: React.FC<ChatContainerProps & React.HTMLAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './ChatHistory.css';
|
|
3
|
+
/** Data shape for a single chat message */
|
|
4
|
+
export interface ChatMessageEntry {
|
|
5
|
+
/** Unique message identifier */
|
|
6
|
+
id: string;
|
|
7
|
+
/** The sender role */
|
|
8
|
+
role: 'user' | 'assistant' | 'system';
|
|
9
|
+
/** Plain text content */
|
|
10
|
+
content: string;
|
|
11
|
+
/** When the message was created */
|
|
12
|
+
createdAt?: Date | string | number;
|
|
13
|
+
}
|
|
14
|
+
export interface ChatHistoryProps {
|
|
15
|
+
/** Array of messages to display */
|
|
16
|
+
messages: ChatMessageEntry[];
|
|
17
|
+
/** Whether the last assistant message is still streaming */
|
|
18
|
+
isStreaming?: boolean;
|
|
19
|
+
/** Prefix shown before user messages */
|
|
20
|
+
userPrefix?: string;
|
|
21
|
+
/** Prefix shown before assistant messages */
|
|
22
|
+
assistantPrefix?: string;
|
|
23
|
+
/** Additional CSS class name */
|
|
24
|
+
className?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Scrollable chat message history with auto-scroll and screen reader support.
|
|
28
|
+
*
|
|
29
|
+
* Uses `role="log"` for accessible announcement of new messages.
|
|
30
|
+
* Follows the data-driven list pattern (TimelineList precedent).
|
|
31
|
+
*/
|
|
32
|
+
export declare const ChatHistory: React.FC<ChatHistoryProps & React.HTMLAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import '../../../styles/keyframes.css';
|
|
3
|
+
import './ChatInput.css';
|
|
4
|
+
export interface ChatInputProps {
|
|
5
|
+
/** Called when the user sends a message */
|
|
6
|
+
onSend: (message: string) => void;
|
|
7
|
+
/** Prompt character displayed before the input */
|
|
8
|
+
prompt?: string;
|
|
9
|
+
/** Placeholder text when input is empty */
|
|
10
|
+
placeholder?: string;
|
|
11
|
+
/** Whether the input is disabled */
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
/** Additional CSS class name */
|
|
14
|
+
className?: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* DOS-styled multiline chat input with Enter-to-send and Shift+Enter for newlines.
|
|
18
|
+
*
|
|
19
|
+
* Auto-grows as the user types, up to a max height. Shows a blinking cursor
|
|
20
|
+
* when not focused.
|
|
21
|
+
*/
|
|
22
|
+
export declare const ChatInput: React.FC<ChatInputProps & React.HTMLAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import '../../../styles/keyframes.css';
|
|
3
|
+
import './ChatMessage.css';
|
|
4
|
+
export interface ChatMessageProps {
|
|
5
|
+
/** The role of the message sender */
|
|
6
|
+
role: 'user' | 'assistant' | 'system';
|
|
7
|
+
/** The text content of the message */
|
|
8
|
+
content: string;
|
|
9
|
+
/** Whether this message is currently being streamed */
|
|
10
|
+
isStreaming?: boolean;
|
|
11
|
+
/** Prefix shown before user messages */
|
|
12
|
+
userPrefix?: string;
|
|
13
|
+
/** Prefix shown before assistant messages */
|
|
14
|
+
assistantPrefix?: string;
|
|
15
|
+
/** Additional CSS class name */
|
|
16
|
+
className?: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* A single chat message rendered in DOS terminal style.
|
|
20
|
+
*
|
|
21
|
+
* User messages display with a `>` prefix, assistant messages with `C:\>`,
|
|
22
|
+
* and system messages appear dimmed. When `isStreaming` is true, a blinking
|
|
23
|
+
* block cursor appears after the content.
|
|
24
|
+
*/
|
|
25
|
+
export declare const ChatMessage: React.FC<ChatMessageProps & React.HTMLAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { ChatMessage } from './ChatMessage';
|
|
2
|
+
export type { ChatMessageProps } from './ChatMessage';
|
|
3
|
+
export { ChatHistory } from './ChatHistory';
|
|
4
|
+
export type { ChatHistoryProps, ChatMessageEntry } from './ChatHistory';
|
|
5
|
+
export { ChatInput } from './ChatInput';
|
|
6
|
+
export type { ChatInputProps } from './ChatInput';
|
|
7
|
+
export { ChatContainer } from './ChatContainer';
|
|
8
|
+
export type { ChatContainerProps } from './ChatContainer';
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import '../../Separator/components/Separator.css';
|
|
3
|
+
import './Footer.css';
|
|
4
|
+
export interface FooterLink {
|
|
5
|
+
/** Display text for the link */
|
|
6
|
+
label: string;
|
|
7
|
+
/** URL the link points to */
|
|
8
|
+
href: string;
|
|
9
|
+
/** Whether the link opens in a new tab */
|
|
10
|
+
external?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface FooterProps {
|
|
13
|
+
/** Copyright text (e.g., "2026 Dominic Kennedy") */
|
|
14
|
+
copyright?: string;
|
|
15
|
+
/** Array of navigation/legal links */
|
|
16
|
+
links?: FooterLink[];
|
|
17
|
+
/** Optional content between separator and links */
|
|
18
|
+
children?: React.ReactNode;
|
|
19
|
+
/** Additional CSS class name */
|
|
20
|
+
className?: string;
|
|
21
|
+
}
|
|
22
|
+
/** Default legal links for German compliance (DDG § 5 / GDPR) */
|
|
23
|
+
export declare const defaultLegalLinks: FooterLink[];
|
|
24
|
+
/**
|
|
25
|
+
* DOS-themed footer with copyright and configurable legal/nav links.
|
|
26
|
+
* Uses middle-dot separators between links for authentic terminal aesthetic.
|
|
27
|
+
*
|
|
28
|
+
* When no `links` are provided, renders default legal links (Impressum + Datenschutz)
|
|
29
|
+
* for German compliance. Pass an empty array to explicitly show no links.
|
|
30
|
+
*/
|
|
31
|
+
export declare const Footer: React.FC<FooterProps & React.HTMLAttributes<HTMLElement>>;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import '../../../styles/keyframes.css';
|
|
2
3
|
import './Terminal.css';
|
|
3
4
|
export interface TerminalProps {
|
|
4
5
|
/**
|
|
@@ -19,14 +20,17 @@ export interface TerminalProps {
|
|
|
19
20
|
resizable?: boolean;
|
|
20
21
|
/**
|
|
21
22
|
* Whether the terminal window can be minimized
|
|
23
|
+
* @default false
|
|
22
24
|
*/
|
|
23
25
|
minimizable?: boolean;
|
|
24
26
|
/**
|
|
25
27
|
* Whether the terminal window can be maximized
|
|
28
|
+
* @default false
|
|
26
29
|
*/
|
|
27
30
|
maximizable?: boolean;
|
|
28
31
|
/**
|
|
29
32
|
* Whether the terminal window can be closed
|
|
33
|
+
* @default false
|
|
30
34
|
*/
|
|
31
35
|
closeable?: boolean;
|
|
32
36
|
/**
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type {
|
|
2
|
+
import type { TimelineEntryData, ZoomLevel } from './types';
|
|
3
3
|
import './TimelineContainer.css';
|
|
4
4
|
import './views/views.css';
|
|
5
5
|
export interface TimelineContainerProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
6
6
|
/** Timeline entries to display */
|
|
7
|
-
entries:
|
|
7
|
+
entries: TimelineEntryData[];
|
|
8
|
+
/**
|
|
9
|
+
* Display mode
|
|
10
|
+
* - "interactive" (default): zoom controls, selection, keyboard shortcuts
|
|
11
|
+
* - "static": read-only vertical feed of expandable entries (replaces TimelineList)
|
|
12
|
+
* @default 'interactive'
|
|
13
|
+
*/
|
|
14
|
+
mode?: 'interactive' | 'static';
|
|
8
15
|
/**
|
|
9
16
|
* Controlled zoom level — overrides internal state when provided.
|
|
10
17
|
* Use with `onZoomChange` for full control.
|
|
File without changes
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type {
|
|
2
|
+
import type { TimelineEntryData } from './types';
|
|
3
|
+
import '../../TimelineEntry/components/TimelineEntry.css';
|
|
3
4
|
export interface TimelineEntryCardProps {
|
|
4
|
-
entry:
|
|
5
|
+
entry: TimelineEntryData;
|
|
5
6
|
isSelected: boolean;
|
|
6
7
|
onSelect?: (id: string) => void;
|
|
7
8
|
footer?: React.ReactNode;
|
|
8
9
|
children: React.ReactNode;
|
|
9
10
|
}
|
|
10
11
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
12
|
+
* Selectable entry card for TimelineContainer views.
|
|
13
|
+
* Uses TimelineEntry's card CSS for visual consistency with static timelines.
|
|
14
|
+
* Adds selection behavior (aria-pressed, glow variant on select).
|
|
13
15
|
*/
|
|
14
16
|
export declare const TimelineEntryCard: React.NamedExoticComponent<TimelineEntryCardProps>;
|
|
File without changes
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { TimelineContainer } from './TimelineContainer';
|
|
2
2
|
export type { TimelineContainerProps } from './TimelineContainer';
|
|
3
3
|
export { ZOOM_LEVELS } from './types';
|
|
4
|
-
export type { TimelineEntry, DateBucket, ZoomLevel } from './types';
|
|
4
|
+
export type { TimelineEntry, TimelineEntryData, DateBucket, ZoomLevel } from './types';
|
|
File without changes
|
|
File without changes
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
1
2
|
/**
|
|
2
3
|
* Shared type definitions for TimelineContainer.
|
|
3
4
|
* Extracted to a separate file to avoid circular imports between
|
|
@@ -7,27 +8,32 @@
|
|
|
7
8
|
export declare const ZOOM_LEVELS: readonly ["year", "month", "day", "hour"];
|
|
8
9
|
/** Timeline zoom level */
|
|
9
10
|
export type ZoomLevel = (typeof ZOOM_LEVELS)[number];
|
|
10
|
-
|
|
11
|
+
/** Shared entry data type used across all timeline components */
|
|
12
|
+
export interface TimelineEntryData {
|
|
11
13
|
/** Unique identifier for this entry */
|
|
12
14
|
id: string;
|
|
13
|
-
/**
|
|
14
|
-
type: 'event' | 'project' | 'milestone';
|
|
15
|
-
/** ISO 8601 date string */
|
|
15
|
+
/** ISO 8601 date string or display date */
|
|
16
16
|
date: string;
|
|
17
17
|
/** Display title */
|
|
18
18
|
title: string;
|
|
19
|
-
/** Entry body content */
|
|
20
|
-
content
|
|
19
|
+
/** Entry body content (string or ReactNode for expandable entries) */
|
|
20
|
+
content?: ReactNode;
|
|
21
|
+
/** Entry category — influences node shape/color */
|
|
22
|
+
type?: 'event' | 'project' | 'milestone';
|
|
21
23
|
/** Categorization tags */
|
|
22
|
-
tags
|
|
24
|
+
tags?: string[];
|
|
23
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* @deprecated Use TimelineEntryData instead.
|
|
28
|
+
*/
|
|
29
|
+
export type TimelineEntry = TimelineEntryData;
|
|
24
30
|
export interface DateBucket {
|
|
25
31
|
/** Human-readable label, e.g. "2024", "March 2024", "Mar 15" */
|
|
26
32
|
label: string;
|
|
27
33
|
/** ISO 8601 period start for sorting */
|
|
28
34
|
periodStart: string;
|
|
29
35
|
/** Entries grouped into this time bucket */
|
|
30
|
-
entries: readonly
|
|
36
|
+
entries: readonly TimelineEntryData[];
|
|
31
37
|
}
|
|
32
38
|
/** Shared props interface for zoom-level view components */
|
|
33
39
|
export interface TimelineViewProps {
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { TimelineContainer } from './components';
|
|
2
|
-
export type { TimelineContainerProps, TimelineEntry, DateBucket, ZoomLevel } from './components';
|
|
2
|
+
export type { TimelineContainerProps, TimelineEntry, TimelineEntryData, DateBucket, ZoomLevel } from './components';
|
|
3
3
|
export { ZOOM_LEVELS } from './components';
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,23 +1,18 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { TimelineEntryData } from '../../TimelineContainer/components/types';
|
|
2
3
|
import './TimelineList.css';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
date: string;
|
|
8
|
-
/** Entry title */
|
|
9
|
-
title: string;
|
|
10
|
-
/** Entry content (rendered as children of TimelineItem) */
|
|
11
|
-
content?: React.ReactNode;
|
|
12
|
-
/** Entry type — influences node shape/color */
|
|
13
|
-
type?: string;
|
|
14
|
-
/** Tags */
|
|
15
|
-
tags?: string[];
|
|
16
|
-
}
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated Use TimelineEntryData from TimelineContainer instead.
|
|
6
|
+
*/
|
|
7
|
+
export type TimelineListEntry = TimelineEntryData;
|
|
17
8
|
export interface TimelineListProps {
|
|
18
9
|
/** Timeline entries to display (rendered in the order provided) */
|
|
19
10
|
entries: TimelineListEntry[];
|
|
20
11
|
/** Additional CSS class name */
|
|
21
12
|
className?: string;
|
|
22
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* @deprecated Use `<TimelineContainer mode="static">` instead.
|
|
16
|
+
* TimelineList will be removed in the next major version.
|
|
17
|
+
*/
|
|
23
18
|
export declare const TimelineList: React.FC<TimelineListProps>;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|