@cjlapao/ui-kit-vue 0.2.0 → 0.2.3
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/index.cjs +18 -25
- package/dist/index.css +37732 -13285
- package/dist/index.js +31192 -21036
- package/dist/types/common/chat/markdown.d.ts +8 -0
- package/dist/types/common/chat/storage.d.ts +48 -0
- package/dist/types/common/chat/stream.d.ts +43 -0
- package/dist/types/common/chat/types.d.ts +143 -0
- package/dist/types/common/connectionFlow/header.d.ts +56 -0
- package/dist/types/common/connectionFlow/icons.d.ts +15 -0
- package/dist/types/common/connectionFlow/index.d.ts +6 -0
- package/dist/types/common/connectionFlow/layout.d.ts +73 -0
- package/dist/types/common/connectionFlow/measure.d.ts +94 -0
- package/dist/types/common/connectionFlow/paint.d.ts +36 -0
- package/dist/types/common/connectionFlow/router.d.ts +131 -0
- package/dist/types/common/connectionFlow/tones.d.ts +79 -0
- package/dist/types/common/connectionFlow/types.d.ts +394 -0
- package/dist/types/common/gantt/drag.d.ts +221 -0
- package/dist/types/common/gantt/index.d.ts +11 -0
- package/dist/types/common/gantt/layout.d.ts +133 -0
- package/dist/types/common/gantt/sample.d.ts +15 -0
- package/dist/types/common/gantt/time.d.ts +77 -0
- package/dist/types/common/gantt/tokens.d.ts +73 -0
- package/dist/types/common/gantt/types.d.ts +216 -0
- package/dist/types/common/i18n/builtIn/de.d.ts +2 -0
- package/dist/types/common/i18n/builtIn/en.d.ts +2 -0
- package/dist/types/common/i18n/builtIn/es.d.ts +2 -0
- package/dist/types/common/i18n/builtIn/fr.d.ts +2 -0
- package/dist/types/common/i18n/builtIn/index.d.ts +15 -0
- package/dist/types/common/i18n/builtIn/pt.d.ts +2 -0
- package/dist/types/common/i18n/catalog.d.ts +32 -0
- package/dist/types/common/i18n/createI18n.d.ts +2 -0
- package/dist/types/common/i18n/dates.d.ts +12 -0
- package/dist/types/common/i18n/detect.d.ts +29 -0
- package/dist/types/common/i18n/icu.d.ts +36 -0
- package/dist/types/common/i18n/index.d.ts +10 -0
- package/dist/types/common/i18n/provider.d.ts +7 -0
- package/dist/types/common/i18n/storage.d.ts +8 -0
- package/dist/types/common/i18n/types.d.ts +64 -0
- package/dist/types/common/i18n/warn.d.ts +5 -0
- package/dist/types/common/theme/Theme.d.ts +941 -3
- package/dist/types/common/theme/glass.d.ts +90 -11
- package/dist/types/common/theme/randomThemeColor.d.ts +4 -4
- package/dist/types/common/tooltip/placement.d.ts +103 -0
- package/dist/types/common/tooltip/tokens.d.ts +40 -0
- package/dist/types/common/types/TableSettings.d.ts +15 -0
- package/dist/types/common/types/Variables.d.ts +71 -1
- package/dist/types/common/utils/dates.d.ts +113 -0
- package/dist/types/common/utils/gravatar.d.ts +0 -10
- package/dist/types/common/utils/safeStorage.d.ts +28 -0
- package/dist/types/common/utils/sanitizeSvg.d.ts +44 -0
- package/dist/types/common/utils/smartVariables.d.ts +74 -18
- package/dist/types/common/utils/tableStorage.d.ts +38 -0
- package/dist/types/vue/src/chat/index.d.ts +4 -0
- package/dist/types/vue/src/components/AccessMatrix.test.d.ts +1 -0
- package/dist/types/vue/src/components/AccessMatrix.vue.d.ts +23 -1
- package/dist/types/vue/src/components/Accordion.test.d.ts +1 -0
- package/dist/types/vue/src/components/Accordion.vue.d.ts +42 -28
- package/dist/types/vue/src/components/ActivityFeed.test.d.ts +1 -0
- package/dist/types/vue/src/components/ActivityFeed.vue.d.ts +141 -0
- package/dist/types/vue/src/components/Alert.test.d.ts +1 -0
- package/dist/types/vue/src/components/Alert.vue.d.ts +59 -2
- package/dist/types/vue/src/components/ApiErrorState.test.d.ts +1 -0
- package/dist/types/vue/src/components/ApiErrorState.vue.d.ts +28 -8
- package/dist/types/vue/src/components/AppDivider.vue.d.ts +53 -4
- package/dist/types/vue/src/components/Badge.vue.d.ts +45 -13
- package/dist/types/vue/src/components/BadgeIcon.vue.d.ts +1 -1
- package/dist/types/vue/src/components/BreakdownCard.test.d.ts +1 -0
- package/dist/types/vue/src/components/BreakdownCard.vue.d.ts +81 -0
- package/dist/types/vue/src/components/Button.vue.d.ts +22 -11
- package/dist/types/vue/src/components/Chat.test.d.ts +1 -0
- package/dist/types/vue/src/components/Chat.vue.d.ts +80 -0
- package/dist/types/vue/src/components/Checkbox.test.d.ts +1 -0
- package/dist/types/vue/src/components/Checkbox.vue.d.ts +44 -29
- package/dist/types/vue/src/components/CollapsiblePanel.vue.d.ts +5 -5
- package/dist/types/vue/src/components/ColorSwatches.test.d.ts +1 -0
- package/dist/types/vue/src/components/ColorSwatches.vue.d.ts +42 -0
- package/dist/types/vue/src/components/Combobox.test.d.ts +1 -0
- package/dist/types/vue/src/components/Combobox.vue.d.ts +61 -12
- package/dist/types/vue/src/components/ConnectionFlow/ConnectionFlow.vue.d.ts +153 -17
- package/dist/types/vue/src/components/ConnectionFlow/ConnectionFlowCanvas.vue.d.ts +28 -0
- package/dist/types/vue/src/components/ConnectionFlow/ConnectionFlowHeader.vue.d.ts +33 -0
- package/dist/types/vue/src/components/ConnectionFlow/ConnectionFlowNodeBody.vue.d.ts +32 -0
- package/dist/types/vue/src/components/ConnectionFlow/ConnectionFlowSkeleton.vue.d.ts +18 -0
- package/dist/types/vue/src/components/ConnectionFlow/ConnectionFlowSvg.vue.d.ts +52 -0
- package/dist/types/vue/src/components/ConnectionFlow/connectionFlow.test.d.ts +1 -0
- package/dist/types/vue/src/components/ConnectionFlow/index.d.ts +11 -4
- package/dist/types/vue/src/components/CustomIcon.vue.d.ts +35 -11
- package/dist/types/vue/src/components/DetailItemCard.vue.d.ts +37 -5
- package/dist/types/vue/src/components/DropdownButton.vue.d.ts +3 -3
- package/dist/types/vue/src/components/DropdownMenu.test.d.ts +1 -0
- package/dist/types/vue/src/components/DropdownMenu.vue.d.ts +1 -1
- package/dist/types/vue/src/components/DynamicFormField.test.d.ts +1 -0
- package/dist/types/vue/src/components/DynamicFormField.vue.d.ts +61 -5
- package/dist/types/vue/src/components/DynamicImg.vue.d.ts +28 -3
- package/dist/types/vue/src/components/EmptyState.test.d.ts +1 -0
- package/dist/types/vue/src/components/EmptyState.vue.d.ts +104 -24
- package/dist/types/vue/src/components/FormField.vue.d.ts +2 -1
- package/dist/types/vue/src/components/Gantt/Gantt.test.d.ts +1 -0
- package/dist/types/vue/src/components/Gantt/Gantt.vue.d.ts +160 -0
- package/dist/types/vue/src/components/Gantt/GanttBodyRow.vue.d.ts +78 -0
- package/dist/types/vue/src/components/Gantt/GanttCell.vue.d.ts +28 -0
- package/dist/types/vue/src/components/Gantt/GanttLinkLayer.vue.d.ts +22 -0
- package/dist/types/vue/src/components/Gantt/GanttScale.vue.d.ts +7 -0
- package/dist/types/vue/src/components/Gantt/GanttTaskBar.vue.d.ts +53 -0
- package/dist/types/vue/src/components/Gantt/GanttToolbar.vue.d.ts +22 -0
- package/dist/types/vue/src/components/Gantt/index.d.ts +18 -0
- package/dist/types/vue/src/components/Gantt/labels.d.ts +3 -0
- package/dist/types/vue/src/components/Gantt/types.d.ts +11 -0
- package/dist/types/vue/src/components/Gantt/useGanttDrag.d.ts +105 -0
- package/dist/types/vue/src/components/GlassBackground.vue.d.ts +4 -3
- package/dist/types/vue/src/components/GlassPanel.vue.d.ts +2 -2
- package/dist/types/vue/src/components/HeaderGroup.vue.d.ts +19 -1
- package/dist/types/vue/src/components/HelpButton.test.d.ts +1 -0
- package/dist/types/vue/src/components/HelpButton.vue.d.ts +15 -6
- package/dist/types/vue/src/components/Hero.test.d.ts +1 -0
- package/dist/types/vue/src/components/Hero.vue.d.ts +52 -31
- package/dist/types/vue/src/components/IconButton.vue.d.ts +12 -6
- package/dist/types/vue/src/components/InfiniteScrollPanel.vue.d.ts +61 -14
- package/dist/types/vue/src/components/InfoRow.test.d.ts +1 -0
- package/dist/types/vue/src/components/InfoRow.vue.d.ts +67 -37
- package/dist/types/vue/src/components/InlinePanel.vue.d.ts +12 -18
- package/dist/types/vue/src/components/Input.test.d.ts +1 -0
- package/dist/types/vue/src/components/Input.vue.d.ts +42 -13
- package/dist/types/vue/src/components/InputGroup.test.d.ts +1 -0
- package/dist/types/vue/src/components/InputGroup.vue.d.ts +20 -5
- package/dist/types/vue/src/components/Loader.test.d.ts +1 -0
- package/dist/types/vue/src/components/Loader.vue.d.ts +30 -11
- package/dist/types/vue/src/components/MarkdownEditor.vue.d.ts +1 -1
- package/dist/types/vue/src/components/MetricBar.test.d.ts +1 -0
- package/dist/types/vue/src/components/MetricBar.vue.d.ts +16 -5
- package/dist/types/vue/src/components/Modal.vue.d.ts +18 -19
- package/dist/types/vue/src/components/MultiProgressBar.vue.d.ts +15 -2
- package/dist/types/vue/src/components/MultiSelectPills.test.d.ts +1 -0
- package/dist/types/vue/src/components/MultiSelectPills.vue.d.ts +47 -43
- package/dist/types/vue/src/components/MultiToggle.test.d.ts +1 -0
- package/dist/types/vue/src/components/MultiToggle.vue.d.ts +33 -6
- package/dist/types/vue/src/components/NotificationModal.test.d.ts +1 -0
- package/dist/types/vue/src/components/NotificationModal.vue.d.ts +19 -2
- package/dist/types/vue/src/components/PageHeader.test.d.ts +1 -0
- package/dist/types/vue/src/components/PageHeader.vue.d.ts +18 -0
- package/dist/types/vue/src/components/PagedPanel.test.d.ts +1 -0
- package/dist/types/vue/src/components/PagedPanel.vue.d.ts +39 -11
- package/dist/types/vue/src/components/Panel.vue.d.ts +18 -9
- package/dist/types/vue/src/components/PasswordInput.test.d.ts +1 -0
- package/dist/types/vue/src/components/PasswordInput.vue.d.ts +20 -3
- package/dist/types/vue/src/components/Picker.test.d.ts +1 -0
- package/dist/types/vue/src/components/Picker.vue.d.ts +3 -3
- package/dist/types/vue/src/components/Pill.vue.d.ts +63 -5
- package/dist/types/vue/src/components/Progress.test.d.ts +1 -0
- package/dist/types/vue/src/components/Progress.vue.d.ts +60 -11
- package/dist/types/vue/src/components/ProgressSpinner.test.d.ts +1 -0
- package/dist/types/vue/src/components/ProgressSpinner.vue.d.ts +46 -0
- package/dist/types/vue/src/components/ScrollArea.test.d.ts +1 -0
- package/dist/types/vue/src/components/ScrollArea.vue.d.ts +52 -0
- package/dist/types/vue/src/components/SearchBar.vue.d.ts +2 -3
- package/dist/types/vue/src/components/Section.vue.d.ts +1 -1
- package/dist/types/vue/src/components/SectionCard.vue.d.ts +2 -2
- package/dist/types/vue/src/components/Select.test.d.ts +1 -0
- package/dist/types/vue/src/components/Select.vue.d.ts +41 -16
- package/dist/types/vue/src/components/SidePanel.vue.d.ts +1 -1
- package/dist/types/vue/src/components/SmartInput.vue.d.ts +49 -18
- package/dist/types/vue/src/components/SmartValue.vue.d.ts +20 -13
- package/dist/types/vue/src/components/SmartVariableBadge.vue.d.ts +17 -0
- package/dist/types/vue/src/components/Spinner.test.d.ts +1 -0
- package/dist/types/vue/src/components/Spinner.vue.d.ts +12 -5
- package/dist/types/vue/src/components/SplitView.vue.d.ts +6 -6
- package/dist/types/vue/src/components/StartupStageStepper.vue.d.ts +1 -1
- package/dist/types/vue/src/components/StatChartTile.vue.d.ts +5 -0
- package/dist/types/vue/src/components/StatCountTile.vue.d.ts +5 -1
- package/dist/types/vue/src/components/StatGraphTile.vue.d.ts +1 -1
- package/dist/types/vue/src/components/StatTile.test.d.ts +1 -0
- package/dist/types/vue/src/components/StatTile.vue.d.ts +5 -1
- package/dist/types/vue/src/components/StatusSpinner.test.d.ts +1 -0
- package/dist/types/vue/src/components/StatusSpinner.vue.d.ts +10 -5
- package/dist/types/vue/src/components/Stepper.test.d.ts +1 -0
- package/dist/types/vue/src/components/Stepper.vue.d.ts +62 -25
- package/dist/types/vue/src/components/Table.test.d.ts +1 -0
- package/dist/types/vue/src/components/Table.vue.d.ts +67 -14
- package/dist/types/vue/src/components/Tabs.vue.d.ts +20 -3
- package/dist/types/vue/src/components/TagPicker.vue.d.ts +3 -3
- package/dist/types/vue/src/components/Textarea.vue.d.ts +8 -5
- package/dist/types/vue/src/components/TimelinePanel/TimelinePanel.vue.d.ts +4 -4
- package/dist/types/vue/src/components/Toggle.vue.d.ts +4 -4
- package/dist/types/vue/src/components/Toolbar.test.d.ts +1 -0
- package/dist/types/vue/src/components/Toolbar.vue.d.ts +62 -0
- package/dist/types/vue/src/components/Tooltip.test.d.ts +1 -0
- package/dist/types/vue/src/components/Tooltip.vue.d.ts +20 -3
- package/dist/types/vue/src/components/TooltipWrapper.vue.d.ts +24 -3
- package/dist/types/vue/src/components/TreeView/TreeFlowSvg.vue.d.ts +5 -5
- package/dist/types/vue/src/components/TreeView/TreeItemRow.vue.d.ts +2 -2
- package/dist/types/vue/src/components/TreeView/TreeView.vue.d.ts +4 -4
- package/dist/types/vue/src/components/UserAvatar.test.d.ts +1 -0
- package/dist/types/vue/src/components/UserAvatar.vue.d.ts +56 -6
- package/dist/types/vue/src/components/VariablePicker.vue.d.ts +23 -6
- package/dist/types/vue/src/components/__dbg.test.d.ts +1 -0
- package/dist/types/vue/src/components/index.d.ts +50 -31
- package/dist/types/vue/src/components/internal/InfoRowContent.vue.d.ts +52 -0
- package/dist/types/vue/src/components/internal/PagedPanelContent.vue.d.ts +47 -0
- package/dist/types/vue/src/connectionFlow/index.d.ts +1 -0
- package/dist/types/vue/src/contexts/IconContext.d.ts +8 -3
- package/dist/types/vue/src/i18n/I18nContext.d.ts +14 -0
- package/dist/types/vue/src/i18n/I18nProvider.test.d.ts +2 -0
- package/dist/types/vue/src/i18n/I18nProvider.vue.d.ts +35 -0
- package/dist/types/vue/src/i18n/index.d.ts +8 -0
- package/dist/types/vue/src/i18n/kit-components-spot.test.d.ts +1 -0
- package/dist/types/vue/src/i18n/useI18n.d.ts +44 -0
- package/dist/types/vue/src/index.d.ts +2 -2
- package/dist/types/vue/src/test-setup.d.ts +5 -0
- package/dist/types/vue/src/types/Icon.d.ts +11 -2
- package/dist/types/vue/src/types/TableSettings.d.ts +1 -0
- package/dist/types/vue/src/types/index.d.ts +1 -0
- package/dist/types/vue/src/utils/index.d.ts +1 -0
- package/dist/types/vue/src/utils/sanitizeSvg.d.ts +1 -0
- package/dist/types/vue/src/utils/tableStorage.d.ts +1 -0
- package/dist/ui-kit-vue.css +1 -1
- package/package.json +8 -3
|
@@ -1,49 +1,129 @@
|
|
|
1
1
|
import type { VNode } from "vue";
|
|
2
2
|
import type { ButtonVariant, ButtonSize, ButtonColor } from "./Button.vue";
|
|
3
|
-
import type
|
|
4
|
-
import type {
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
import { type ControlSize, type SurfaceCorner, type SurfacePadding, type TrueColor } from "../theme/Theme";
|
|
4
|
+
import type { GlassOpacity, GlassVibrancy, SpecularMode } from "../theme/glass";
|
|
5
|
+
/**
|
|
6
|
+
* Every container surface, plus `plain` for an empty state dropped inside a
|
|
7
|
+
* card the app already owns — the common case, and previously only reachable
|
|
8
|
+
* by setting `disableBorder` *and* `transparentBackground` together.
|
|
9
|
+
*/
|
|
10
|
+
export declare const EMPTY_STATE_VARIANTS: readonly ["elevated", "outlined", "subtle", "tonal", "default", "glass", "simple", "liquid-glass", "plain"];
|
|
11
|
+
export type EmptyStateVariant = (typeof EMPTY_STATE_VARIANTS)[number];
|
|
7
12
|
export type EmptyStateTone = TrueColor;
|
|
13
|
+
export type EmptyStateSize = ControlSize;
|
|
14
|
+
/** @deprecated Use `size`, which now drives the whole type scale. */
|
|
15
|
+
export type TextSize = ControlSize;
|
|
16
|
+
type EmptyStateSizeTokens = {
|
|
17
|
+
/** Explicit icon dimensions — an empty state's glyph is far larger than a
|
|
18
|
+
* control's, so it does not sit on the shared icon scale. */
|
|
19
|
+
icon: string;
|
|
20
|
+
/** Padding of the tinted disc behind the icon. */
|
|
21
|
+
iconPad: string;
|
|
22
|
+
title: string;
|
|
23
|
+
subtitle: string;
|
|
24
|
+
gap: string;
|
|
25
|
+
/** Space between the copy and the action row. */
|
|
26
|
+
actionGap: string;
|
|
27
|
+
action: ButtonSize;
|
|
28
|
+
};
|
|
29
|
+
declare const SIZE_STYLES: Record<EmptyStateSize, EmptyStateSizeTokens>;
|
|
8
30
|
export interface EmptyStateProps {
|
|
9
31
|
title?: string;
|
|
10
32
|
subtitle?: string;
|
|
33
|
+
/** @default "outlined" */
|
|
34
|
+
variant?: EmptyStateVariant;
|
|
35
|
+
/** @default "neutral" */
|
|
36
|
+
tone?: EmptyStateTone;
|
|
37
|
+
/** Alias for `tone`, matching `Panel`. */
|
|
38
|
+
color?: TrueColor;
|
|
39
|
+
/** Corner radius, on the shared container scale. */
|
|
40
|
+
corner?: SurfaceCorner;
|
|
41
|
+
/** Container padding, on the shared container scale. @default "lg" */
|
|
42
|
+
padding?: SurfacePadding;
|
|
43
|
+
/**
|
|
44
|
+
* Density — icon, type scale, gaps and the action button's default size.
|
|
45
|
+
* @default "md"
|
|
46
|
+
*/
|
|
47
|
+
size?: EmptyStateSize;
|
|
48
|
+
/** @deprecated Use `size`. Ignored when `size` is set. */
|
|
49
|
+
textSize?: ControlSize;
|
|
50
|
+
/**
|
|
51
|
+
* The dashed rule that marks a drop zone or a slot waiting to be filled.
|
|
52
|
+
* Drawn as an `outline` rather than a border so it works on every variant,
|
|
53
|
+
* including the ring-based ones, without fighting the card's own border.
|
|
54
|
+
* @default true
|
|
55
|
+
*/
|
|
56
|
+
dashed?: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* A registry icon name or a node. The default used to be `"Plus"`, which is
|
|
59
|
+
* not in the registry — so every default empty state rendered CustomIcon's
|
|
60
|
+
* missing-icon placeholder rather than a glyph. The name is `"Add"`.
|
|
61
|
+
* @default "Add"
|
|
62
|
+
*/
|
|
63
|
+
icon?: string | VNode;
|
|
64
|
+
/** @default true */
|
|
65
|
+
showIcon?: boolean;
|
|
66
|
+
/** Overrides the dimensions the `size` would have chosen. */
|
|
67
|
+
iconSize?: string;
|
|
68
|
+
/** Overrides the tone for the glyph only. */
|
|
69
|
+
iconColor?: TrueColor;
|
|
70
|
+
/**
|
|
71
|
+
* Tinted disc behind the glyph. It used to be a square `dark:bg-white/5`
|
|
72
|
+
* with no light-mode partner, so it appeared out of nowhere in dark mode.
|
|
73
|
+
* @default true
|
|
74
|
+
*/
|
|
75
|
+
iconBackground?: boolean;
|
|
11
76
|
actionLabel?: string;
|
|
12
77
|
onAction?: () => void;
|
|
13
78
|
actionVariant?: ButtonVariant;
|
|
14
79
|
actionColor?: ButtonColor;
|
|
15
|
-
icon?: string | VNode;
|
|
16
|
-
iconSize?: IconSize;
|
|
17
|
-
iconColor?: TrueColor;
|
|
18
|
-
textSize?: TextSize;
|
|
19
|
-
showIcon?: boolean;
|
|
20
|
-
tone?: EmptyStateTone;
|
|
21
|
-
disableBorder?: boolean;
|
|
22
|
-
transparentBackground?: boolean;
|
|
23
|
-
fullWidth?: boolean;
|
|
24
|
-
fullHeight?: boolean;
|
|
25
80
|
actionSize?: ButtonSize;
|
|
26
81
|
actionLeadingIcon?: string | VNode;
|
|
27
|
-
|
|
82
|
+
/**
|
|
83
|
+
* The action is in flight. `Button` swaps its leading icon for a spinner and
|
|
84
|
+
* blocks the press, so a retry cannot be fired twice while the first one is
|
|
85
|
+
* still running.
|
|
86
|
+
*/
|
|
87
|
+
actionLoading?: boolean;
|
|
88
|
+
actionDisabled?: boolean;
|
|
89
|
+
fullWidth?: boolean;
|
|
90
|
+
fullHeight?: boolean;
|
|
91
|
+
/** @deprecated Use `variant="plain"`. */
|
|
92
|
+
disableBorder?: boolean;
|
|
93
|
+
/** @deprecated Use `variant="plain"`. */
|
|
94
|
+
transparentBackground?: boolean;
|
|
95
|
+
/** Glass fill transparency, for the see-through variants. */
|
|
96
|
+
glassOpacity?: GlassOpacity;
|
|
97
|
+
/** Backdrop vibrancy, for the see-through variants. */
|
|
98
|
+
vibrancy?: GlassVibrancy;
|
|
99
|
+
/** Specular highlight, for the see-through variants. */
|
|
100
|
+
specularMode?: SpecularMode;
|
|
28
101
|
}
|
|
29
|
-
|
|
102
|
+
export { SIZE_STYLES as EMPTY_STATE_SIZE_STYLES };
|
|
103
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<EmptyStateProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
104
|
+
action: () => any;
|
|
105
|
+
}, string, import("vue").PublicProps, Readonly<EmptyStateProps> & Readonly<{
|
|
106
|
+
onAction?: (() => any) | undefined;
|
|
107
|
+
}>, {
|
|
30
108
|
icon: string | VNode;
|
|
31
|
-
|
|
32
|
-
|
|
109
|
+
variant: EmptyStateVariant;
|
|
110
|
+
corner: SurfaceCorner;
|
|
111
|
+
dashed: boolean;
|
|
33
112
|
fullWidth: boolean;
|
|
34
|
-
|
|
35
|
-
actionColor: ButtonColor;
|
|
36
|
-
iconSize: IconSize;
|
|
37
|
-
textSize: TextSize;
|
|
113
|
+
padding: SurfacePadding;
|
|
38
114
|
showIcon: boolean;
|
|
115
|
+
iconBackground: boolean;
|
|
116
|
+
actionLoading: boolean;
|
|
117
|
+
actionDisabled: boolean;
|
|
118
|
+
fullHeight: boolean;
|
|
39
119
|
disableBorder: boolean;
|
|
40
120
|
transparentBackground: boolean;
|
|
41
|
-
fullHeight: boolean;
|
|
42
|
-
actionSize: ButtonSize;
|
|
43
121
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
|
|
44
122
|
title?: (props: {}) => any;
|
|
45
123
|
} & {
|
|
46
124
|
subtitle?: (props: {}) => any;
|
|
125
|
+
} & {
|
|
126
|
+
actions?: (props: {}) => any;
|
|
47
127
|
}>;
|
|
48
128
|
export default _default;
|
|
49
129
|
type __VLS_WithSlots<T, S> = T & {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import type { ValidationStatus } from "../theme/Theme";
|
|
1
2
|
type FormFieldLayout = "stacked" | "inline";
|
|
2
|
-
type FormFieldValidationStatus =
|
|
3
|
+
type FormFieldValidationStatus = ValidationStatus;
|
|
3
4
|
type FormFieldWidth = "auto" | "full";
|
|
4
5
|
export interface FormFieldProps {
|
|
5
6
|
label?: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import type { GanttBarGeometry, GanttColumn, GanttDate, GanttLabels, GanttLane, GanttLink, GanttSnap, GanttTask, TrueColor } from "../../../../common/gantt";
|
|
2
|
+
import type { VNodeChild } from "vue";
|
|
3
|
+
import type { PanelCorner, PanelPadding, PanelVariant } from "../Panel.vue";
|
|
4
|
+
export type { GanttTask, GanttLink, GanttLane, GanttColumn, GanttSnap, GanttLabels, TrueColor };
|
|
5
|
+
/** The Panel surface variant driving the Gantt chrome (re-exported name). */
|
|
6
|
+
export type GanttVariant = PanelVariant;
|
|
7
|
+
/** The shared container radius scale (re-exported Panel `corner` scale). */
|
|
8
|
+
export type GanttCorner = PanelCorner;
|
|
9
|
+
/** The shared container padding scale (re-exported Panel `padding` scale). */
|
|
10
|
+
export type GanttPadding = PanelPadding;
|
|
11
|
+
export { mergeGanttLabels } from "./labels";
|
|
12
|
+
export interface GanttProps {
|
|
13
|
+
/** The task list (controlled). Parents/children via `task.parent`. */
|
|
14
|
+
tasks: GanttTask[];
|
|
15
|
+
/** Dependencies (controlled). Omit for a bar-only chart. */
|
|
16
|
+
links?: GanttLink[];
|
|
17
|
+
/** Swimlanes / group bands. Tasks are assigned via `task.lane`. */
|
|
18
|
+
lanes?: GanttLane[];
|
|
19
|
+
/** Left-panel columns. Defaults to name / owner / progress. */
|
|
20
|
+
columns?: GanttColumn[];
|
|
21
|
+
/**
|
|
22
|
+
* Chart header content. The header strip (above the column header) is
|
|
23
|
+
* always rendered — it carries the zoom selector at the right edge (after
|
|
24
|
+
* `actions`) — and these parts render when provided.
|
|
25
|
+
*/
|
|
26
|
+
icon?: VNodeChild;
|
|
27
|
+
/** Small uppercase eyebrow rendered above the `title`. */
|
|
28
|
+
subtitle?: string;
|
|
29
|
+
/** Large title line. */
|
|
30
|
+
title?: string;
|
|
31
|
+
/** Right-aligned actions region (e.g. a status pill). */
|
|
32
|
+
actions?: VNodeChild;
|
|
33
|
+
/**
|
|
34
|
+
* Enable pointer editing (move / resize / reorder / link). Defaults to
|
|
35
|
+
* `true` when a change listener is provided, or when set explicitly.
|
|
36
|
+
*/
|
|
37
|
+
editable?: boolean;
|
|
38
|
+
/** Explicit per-lane top-level order (controlled). */
|
|
39
|
+
rowOrder?: string[];
|
|
40
|
+
/** Controlled selection. When omitted the selection is internal. */
|
|
41
|
+
selectedId?: string | null;
|
|
42
|
+
/** px per day. Controlled when provided with `onZoomChange`. */
|
|
43
|
+
zoom?: number;
|
|
44
|
+
/** Initial px per day when uncontrolled. Defaults to 16 (week). */
|
|
45
|
+
initialZoom?: number;
|
|
46
|
+
minZoom?: number;
|
|
47
|
+
maxZoom?: number;
|
|
48
|
+
/** Snap for drag edits. Defaults to `"day"`. */
|
|
49
|
+
snap?: GanttSnap;
|
|
50
|
+
/** Draw the today marker line. Defaults to `true`. */
|
|
51
|
+
showToday?: boolean;
|
|
52
|
+
/** Override the today date (demo/tests). */
|
|
53
|
+
today?: GanttDate;
|
|
54
|
+
/** Row height in px. Defaults to 44. */
|
|
55
|
+
rowHeight?: number;
|
|
56
|
+
/** Total component height (px or CSS length). Defaults to 520. */
|
|
57
|
+
height?: number | string;
|
|
58
|
+
/** Accent colour for chrome (today marker, selection, default bars). */
|
|
59
|
+
color?: TrueColor;
|
|
60
|
+
/**
|
|
61
|
+
* Panel surface variant for the whole Gantt chrome — container fill,
|
|
62
|
+
* border, header and toolbar. Propagated to the controls and the hairline
|
|
63
|
+
* dividers through the shared surface tokens.
|
|
64
|
+
* @default "elevated"
|
|
65
|
+
*/
|
|
66
|
+
variant?: GanttVariant;
|
|
67
|
+
/**
|
|
68
|
+
* Corner radius of the panel surface — the shared container scale
|
|
69
|
+
* (same `corner` vocabulary as Panel).
|
|
70
|
+
* @default "rounded-sm"
|
|
71
|
+
*/
|
|
72
|
+
corner?: GanttCorner;
|
|
73
|
+
/**
|
|
74
|
+
* Inset around the whole chart, inside the panel surface (Panel's
|
|
75
|
+
* `padding` pass-through). The header seam and sticky columns keep
|
|
76
|
+
* working — the chart is simply framed by the surface.
|
|
77
|
+
* @default "none"
|
|
78
|
+
*/
|
|
79
|
+
padding?: GanttPadding;
|
|
80
|
+
/**
|
|
81
|
+
* Backdrop vibrancy for the liquid-glass variant (Panel pass-through).
|
|
82
|
+
*/
|
|
83
|
+
vibrancy?: "low" | "medium" | "high" | number;
|
|
84
|
+
/**
|
|
85
|
+
* Glass fill opacity for the liquid-glass variant (Panel pass-through).
|
|
86
|
+
* @default "frosted"
|
|
87
|
+
*/
|
|
88
|
+
glassOpacity?: "frosted" | "light" | "clear" | number;
|
|
89
|
+
/** Show a loading skeleton. */
|
|
90
|
+
loading?: boolean;
|
|
91
|
+
/** Copy overrides. */
|
|
92
|
+
labels?: Partial<GanttLabels>;
|
|
93
|
+
/** Custom bar content; receives the task and its live geometry. */
|
|
94
|
+
renderBar?: (task: GanttTask, geo: GanttBarGeometry) => VNodeChild;
|
|
95
|
+
/** Custom cell content for user columns. */
|
|
96
|
+
renderCell?: (value: unknown, task: GanttTask, column: GanttColumn) => VNodeChild | null;
|
|
97
|
+
/**
|
|
98
|
+
* Enables drag-to-resize of the fixed columns (like `Table.resizableColumns`).
|
|
99
|
+
* Each column can opt out via `column.resizable = false`; the built-in
|
|
100
|
+
* progress column does.
|
|
101
|
+
*/
|
|
102
|
+
resizableColumns?: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Initial column width map (`columnKey → pixels`). Serialise with
|
|
105
|
+
* `JSON.stringify` to save; parse and pass back to restore.
|
|
106
|
+
*/
|
|
107
|
+
columnWidths?: Record<string, number>;
|
|
108
|
+
/**
|
|
109
|
+
* Locale for the scale/date labels. Defaults to the active kit i18n
|
|
110
|
+
* locale (built-in English when no provider is mounted).
|
|
111
|
+
*/
|
|
112
|
+
locale?: string;
|
|
113
|
+
}
|
|
114
|
+
export interface GanttEmits {
|
|
115
|
+
(e: "tasks-change", tasks: GanttTask[]): void;
|
|
116
|
+
(e: "links-change", links: GanttLink[]): void;
|
|
117
|
+
(e: "reorder", order: string[]): void;
|
|
118
|
+
(e: "select", id: string | null): void;
|
|
119
|
+
(e: "zoom-change", zoom: number): void;
|
|
120
|
+
/** Emitted with the full column width map after a column resize. */
|
|
121
|
+
(e: "column-width-change", widths: Record<string, number>): void;
|
|
122
|
+
}
|
|
123
|
+
declare const _default: __VLS_WithSlots<import("vue").DefineComponent<GanttProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
124
|
+
select: (id: string | null) => any;
|
|
125
|
+
reorder: (order: string[]) => any;
|
|
126
|
+
"tasks-change": (tasks: GanttTask[]) => any;
|
|
127
|
+
"links-change": (links: GanttLink[]) => any;
|
|
128
|
+
"zoom-change": (zoom: number) => any;
|
|
129
|
+
"column-width-change": (widths: Record<string, number>) => any;
|
|
130
|
+
}, string, import("vue").PublicProps, Readonly<GanttProps> & Readonly<{
|
|
131
|
+
onSelect?: ((id: string | null) => any) | undefined;
|
|
132
|
+
onReorder?: ((order: string[]) => any) | undefined;
|
|
133
|
+
"onTasks-change"?: ((tasks: GanttTask[]) => any) | undefined;
|
|
134
|
+
"onLinks-change"?: ((links: GanttLink[]) => any) | undefined;
|
|
135
|
+
"onZoom-change"?: ((zoom: number) => any) | undefined;
|
|
136
|
+
"onColumn-width-change"?: ((widths: Record<string, number>) => any) | undefined;
|
|
137
|
+
}>, {
|
|
138
|
+
height: number | string;
|
|
139
|
+
loading: boolean;
|
|
140
|
+
color: TrueColor;
|
|
141
|
+
variant: GanttVariant;
|
|
142
|
+
corner: GanttCorner;
|
|
143
|
+
padding: GanttPadding;
|
|
144
|
+
resizableColumns: boolean;
|
|
145
|
+
minZoom: number;
|
|
146
|
+
maxZoom: number;
|
|
147
|
+
links: GanttLink[];
|
|
148
|
+
initialZoom: number;
|
|
149
|
+
snap: GanttSnap;
|
|
150
|
+
showToday: boolean;
|
|
151
|
+
rowHeight: number;
|
|
152
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
|
|
153
|
+
empty?: (props: {}) => any;
|
|
154
|
+
}>;
|
|
155
|
+
export default _default;
|
|
156
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
157
|
+
new (): {
|
|
158
|
+
$slots: S;
|
|
159
|
+
};
|
|
160
|
+
};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type { GanttBarGeometry, GanttColumn, GanttLabels, GanttRow, GanttTask, TrueColor } from "../../../../common/gantt";
|
|
2
|
+
import type { VNodeChild } from "vue";
|
|
3
|
+
export interface GanttBodyRowProps {
|
|
4
|
+
row: GanttRow;
|
|
5
|
+
columns: GanttColumn[];
|
|
6
|
+
leftWidth: number;
|
|
7
|
+
timelineWidth: number;
|
|
8
|
+
rangeStart: number;
|
|
9
|
+
zoom: number;
|
|
10
|
+
color: TrueColor;
|
|
11
|
+
interactive: boolean;
|
|
12
|
+
/** Static port slots on this bar's edges (offsets from centre) — the
|
|
13
|
+
* hover link handles avoid the fan and sit on the largest free slot. */
|
|
14
|
+
fanOut?: number[];
|
|
15
|
+
fanIn?: number[];
|
|
16
|
+
selected: boolean;
|
|
17
|
+
labels: GanttLabels;
|
|
18
|
+
/** Locale for date/aria strings. */
|
|
19
|
+
locale?: string;
|
|
20
|
+
renderCell?: (value: unknown, task: GanttTask, column: GanttColumn) => VNodeChild | null;
|
|
21
|
+
renderBar?: (task: GanttTask, geo: GanttBarGeometry) => VNodeChild;
|
|
22
|
+
drag: {
|
|
23
|
+
taskId: string;
|
|
24
|
+
kind: string;
|
|
25
|
+
} | null;
|
|
26
|
+
liveDates: {
|
|
27
|
+
start: number;
|
|
28
|
+
end: number;
|
|
29
|
+
} | null;
|
|
30
|
+
/** Live percent complete (0..1) while this row's progress knob is dragged. */
|
|
31
|
+
liveProgress?: number | null;
|
|
32
|
+
/** Live lane roll-up (0..1) while one of the lane's children is dragged. */
|
|
33
|
+
liveLane?: number | null;
|
|
34
|
+
/** Live group roll-up (0..1) while one of this row's descendants is dragged. */
|
|
35
|
+
liveRollup?: number | null;
|
|
36
|
+
selectionTokens: {
|
|
37
|
+
ring: string;
|
|
38
|
+
row: string;
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Hairline divider classes (border colour) for row / cell edges — the
|
|
42
|
+
* Gantt passes its Panel surface divider so hairlines follow the variant.
|
|
43
|
+
*/
|
|
44
|
+
dividerClass?: string;
|
|
45
|
+
}
|
|
46
|
+
export interface GanttBodyRowEmits {
|
|
47
|
+
(e: "grip-pointer-down", rowKey: string, task: GanttTask, ev: PointerEvent): void;
|
|
48
|
+
(e: "bar-pointer-down", task: GanttTask, ev: PointerEvent): void;
|
|
49
|
+
(e: "resize-pointer-down", task: GanttTask, edge: "start" | "end", ev: PointerEvent): void;
|
|
50
|
+
(e: "link-handle-pointer-down", task: GanttTask, side: 1 | -1, ev: PointerEvent, fromOffset?: number): void;
|
|
51
|
+
(e: "progress-pointer-down", task: GanttTask, ev: PointerEvent): void;
|
|
52
|
+
(e: "caret-click", taskId: string, isOpen: boolean): void;
|
|
53
|
+
(e: "lane-caret-click", laneId: string, isOpen: boolean): void;
|
|
54
|
+
(e: "select", id: string): void;
|
|
55
|
+
(e: "bar-keydown", ev: KeyboardEvent, task: GanttTask): void;
|
|
56
|
+
}
|
|
57
|
+
declare const _default: import("vue").DefineComponent<GanttBodyRowProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
58
|
+
select: (id: string) => any;
|
|
59
|
+
"caret-click": (taskId: string, isOpen: boolean) => any;
|
|
60
|
+
"bar-pointer-down": (task: GanttTask, ev: PointerEvent) => any;
|
|
61
|
+
"resize-pointer-down": (task: GanttTask, edge: "start" | "end", ev: PointerEvent) => any;
|
|
62
|
+
"link-handle-pointer-down": (task: GanttTask, side: 1 | -1, ev: PointerEvent, fromOffset?: number | undefined) => any;
|
|
63
|
+
"progress-pointer-down": (task: GanttTask, ev: PointerEvent) => any;
|
|
64
|
+
"bar-keydown": (ev: KeyboardEvent, task: GanttTask) => any;
|
|
65
|
+
"grip-pointer-down": (rowKey: string, task: GanttTask, ev: PointerEvent) => any;
|
|
66
|
+
"lane-caret-click": (laneId: string, isOpen: boolean) => any;
|
|
67
|
+
}, string, import("vue").PublicProps, Readonly<GanttBodyRowProps> & Readonly<{
|
|
68
|
+
onSelect?: ((id: string) => any) | undefined;
|
|
69
|
+
"onCaret-click"?: ((taskId: string, isOpen: boolean) => any) | undefined;
|
|
70
|
+
"onBar-pointer-down"?: ((task: GanttTask, ev: PointerEvent) => any) | undefined;
|
|
71
|
+
"onResize-pointer-down"?: ((task: GanttTask, edge: "start" | "end", ev: PointerEvent) => any) | undefined;
|
|
72
|
+
"onLink-handle-pointer-down"?: ((task: GanttTask, side: 1 | -1, ev: PointerEvent, fromOffset?: number | undefined) => any) | undefined;
|
|
73
|
+
"onProgress-pointer-down"?: ((task: GanttTask, ev: PointerEvent) => any) | undefined;
|
|
74
|
+
"onBar-keydown"?: ((ev: KeyboardEvent, task: GanttTask) => any) | undefined;
|
|
75
|
+
"onGrip-pointer-down"?: ((rowKey: string, task: GanttTask, ev: PointerEvent) => any) | undefined;
|
|
76
|
+
"onLane-caret-click"?: ((laneId: string, isOpen: boolean) => any) | undefined;
|
|
77
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
78
|
+
export default _default;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { GanttColumn, GanttTask } from "../../../../common/gantt";
|
|
2
|
+
import type { VNodeChild } from "vue";
|
|
3
|
+
export interface GanttCellProps {
|
|
4
|
+
col: GanttColumn;
|
|
5
|
+
task: GanttTask;
|
|
6
|
+
depth: number;
|
|
7
|
+
isGroup: boolean;
|
|
8
|
+
childCount: number;
|
|
9
|
+
first: boolean;
|
|
10
|
+
/** Live percent complete (0..1) while this task's progress knob is dragged. */
|
|
11
|
+
liveProgress?: number | null;
|
|
12
|
+
/** Live group roll-up (0..1) while one of this group's descendants is dragged. */
|
|
13
|
+
liveRollup?: number | null;
|
|
14
|
+
/** Committed roll-up (0..1) for a group row — groups display their children's roll-up, not an own value. */
|
|
15
|
+
rowProgress?: number | null;
|
|
16
|
+
renderCell?: (value: unknown, task: GanttTask, column: GanttColumn) => VNodeChild | null;
|
|
17
|
+
/** Hairline divider classes (border colour) for the cell's right edge. */
|
|
18
|
+
dividerClass?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface GanttCellEmits {
|
|
21
|
+
(e: "caret-click", taskId: string, isOpen: boolean): void;
|
|
22
|
+
}
|
|
23
|
+
declare const _default: import("vue").DefineComponent<GanttCellProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
24
|
+
"caret-click": (taskId: string, isOpen: boolean) => any;
|
|
25
|
+
}, string, import("vue").PublicProps, Readonly<GanttCellProps> & Readonly<{
|
|
26
|
+
"onCaret-click"?: ((taskId: string, isOpen: boolean) => any) | undefined;
|
|
27
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
28
|
+
export default _default;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { GanttLink, GanttLinkPath, TrueColor } from "../../../../common/gantt";
|
|
2
|
+
import type { GanttRubberPreview } from "./types";
|
|
3
|
+
export interface GanttLinkLayerProps {
|
|
4
|
+
width: number;
|
|
5
|
+
height: number;
|
|
6
|
+
paths: GanttLinkPath[];
|
|
7
|
+
color: TrueColor;
|
|
8
|
+
selected: GanttLink | null;
|
|
9
|
+
rubber: GanttRubberPreview | null;
|
|
10
|
+
interactive: boolean;
|
|
11
|
+
/** Remove the currently-selected link (floating delete control / dbl-click). */
|
|
12
|
+
onDeleteLink?: (link: GanttLink) => void;
|
|
13
|
+
}
|
|
14
|
+
export interface GanttLinkLayerEmits {
|
|
15
|
+
(e: "select-link", link: GanttLink | null): void;
|
|
16
|
+
}
|
|
17
|
+
declare const _default: import("vue").DefineComponent<GanttLinkLayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
18
|
+
"select-link": (link: GanttLink | null) => any;
|
|
19
|
+
}, string, import("vue").PublicProps, Readonly<GanttLinkLayerProps> & Readonly<{
|
|
20
|
+
"onSelect-link"?: ((link: GanttLink | null) => any) | undefined;
|
|
21
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
|
+
export default _default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { GanttTimeScaleLevel } from "../../../../common/gantt";
|
|
2
|
+
export interface GanttScaleProps {
|
|
3
|
+
levels: GanttTimeScaleLevel[];
|
|
4
|
+
height: number;
|
|
5
|
+
}
|
|
6
|
+
declare const _default: import("vue").DefineComponent<GanttScaleProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<GanttScaleProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { GanttBarGeometry, GanttLabels, GanttRow, GanttTask, TrueColor } from "../../../../common/gantt";
|
|
2
|
+
import type { VNodeChild } from "vue";
|
|
3
|
+
export interface GanttTaskBarProps {
|
|
4
|
+
task: GanttTask;
|
|
5
|
+
row: GanttRow;
|
|
6
|
+
rangeStart: number;
|
|
7
|
+
zoom: number;
|
|
8
|
+
color: TrueColor;
|
|
9
|
+
interactive: boolean;
|
|
10
|
+
fanOut?: number[];
|
|
11
|
+
fanIn?: number[];
|
|
12
|
+
selected: boolean;
|
|
13
|
+
labels: GanttLabels;
|
|
14
|
+
/** Locale for date/aria strings. */
|
|
15
|
+
locale?: string;
|
|
16
|
+
isDraggingThis: boolean;
|
|
17
|
+
liveDates: {
|
|
18
|
+
start: number;
|
|
19
|
+
end: number;
|
|
20
|
+
} | null;
|
|
21
|
+
/** Live percent complete (0..1) while this bar's progress knob is dragged. */
|
|
22
|
+
liveProgress?: number | null;
|
|
23
|
+
/** Live group roll-up (0..1) while one of this group's descendants is dragged. */
|
|
24
|
+
liveRollup?: number | null;
|
|
25
|
+
renderBar?: (task: GanttTask, geo: GanttBarGeometry) => VNodeChild;
|
|
26
|
+
selectionTokens: {
|
|
27
|
+
ring: string;
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
export interface GanttTaskBarEmits {
|
|
31
|
+
(e: "bar-pointer-down", task: GanttTask, ev: PointerEvent): void;
|
|
32
|
+
(e: "resize-pointer-down", task: GanttTask, edge: "start" | "end", ev: PointerEvent): void;
|
|
33
|
+
(e: "link-handle-pointer-down", task: GanttTask, side: 1 | -1, ev: PointerEvent, fromOffset?: number): void;
|
|
34
|
+
(e: "progress-pointer-down", task: GanttTask, ev: PointerEvent): void;
|
|
35
|
+
(e: "select", id: string): void;
|
|
36
|
+
(e: "bar-keydown", ev: KeyboardEvent, task: GanttTask): void;
|
|
37
|
+
}
|
|
38
|
+
declare const _default: import("vue").DefineComponent<GanttTaskBarProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
39
|
+
select: (id: string) => any;
|
|
40
|
+
"bar-pointer-down": (task: GanttTask, ev: PointerEvent) => any;
|
|
41
|
+
"resize-pointer-down": (task: GanttTask, edge: "start" | "end", ev: PointerEvent) => any;
|
|
42
|
+
"link-handle-pointer-down": (task: GanttTask, side: 1 | -1, ev: PointerEvent, fromOffset?: number | undefined) => any;
|
|
43
|
+
"progress-pointer-down": (task: GanttTask, ev: PointerEvent) => any;
|
|
44
|
+
"bar-keydown": (ev: KeyboardEvent, task: GanttTask) => any;
|
|
45
|
+
}, string, import("vue").PublicProps, Readonly<GanttTaskBarProps> & Readonly<{
|
|
46
|
+
onSelect?: ((id: string) => any) | undefined;
|
|
47
|
+
"onBar-pointer-down"?: ((task: GanttTask, ev: PointerEvent) => any) | undefined;
|
|
48
|
+
"onResize-pointer-down"?: ((task: GanttTask, edge: "start" | "end", ev: PointerEvent) => any) | undefined;
|
|
49
|
+
"onLink-handle-pointer-down"?: ((task: GanttTask, side: 1 | -1, ev: PointerEvent, fromOffset?: number | undefined) => any) | undefined;
|
|
50
|
+
"onProgress-pointer-down"?: ((task: GanttTask, ev: PointerEvent) => any) | undefined;
|
|
51
|
+
"onBar-keydown"?: ((ev: KeyboardEvent, task: GanttTask) => any) | undefined;
|
|
52
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
53
|
+
export default _default;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { GANTT_ZOOM_PRESET } from "../../../../common/gantt";
|
|
2
|
+
import type { SurfaceVariant } from "../../theme/Theme";
|
|
3
|
+
export interface GanttToolbarProps {
|
|
4
|
+
/** Gantt surface variant the pill should match. @default "elevated" */
|
|
5
|
+
variant?: SurfaceVariant;
|
|
6
|
+
zoom: number;
|
|
7
|
+
presets: GANTT_ZOOM_PRESET[];
|
|
8
|
+
}
|
|
9
|
+
export interface GanttToolbarEmits {
|
|
10
|
+
(e: "zoom-to", value: number): void;
|
|
11
|
+
(e: "zoom-by", factor: number): void;
|
|
12
|
+
}
|
|
13
|
+
declare const _default: import("vue").DefineComponent<GanttToolbarProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
14
|
+
"zoom-to": (value: number) => any;
|
|
15
|
+
"zoom-by": (factor: number) => any;
|
|
16
|
+
}, string, import("vue").PublicProps, Readonly<GanttToolbarProps> & Readonly<{
|
|
17
|
+
"onZoom-to"?: ((value: number) => any) | undefined;
|
|
18
|
+
"onZoom-by"?: ((factor: number) => any) | undefined;
|
|
19
|
+
}>, {
|
|
20
|
+
variant: SurfaceVariant;
|
|
21
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
|
+
export default _default;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gantt — public surface (Vue kit).
|
|
3
|
+
*
|
|
4
|
+
* The `Gantt` component plus the framework-agnostic engine values/types
|
|
5
|
+
* (re-exported from `common/gantt`) so consumers can import the data model
|
|
6
|
+
* from one place:
|
|
7
|
+
*
|
|
8
|
+
* ```vue
|
|
9
|
+
* <script setup>
|
|
10
|
+
* import { Gantt, sampleGantt } from "@cjlapao/ui-kit-vue";
|
|
11
|
+
* </script>
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export { default as Gantt } from "./Gantt.vue";
|
|
15
|
+
export type { GanttProps, GanttEmits, GanttVariant, GanttCorner, GanttPadding, } from "./Gantt.vue";
|
|
16
|
+
export { mergeGanttLabels } from "./labels";
|
|
17
|
+
export { sampleGantt, sampleGanttLanes, sampleGanttTasks, sampleGanttLinks, GANTT_ZOOM_PRESETS, GANTT_MIN_ZOOM, GANTT_MAX_ZOOM, DEFAULT_GANTT_LABELS, } from "../../../../common/gantt";
|
|
18
|
+
export type { GanttTask, GanttLink, GanttLane, GanttColumn, GanttSnap, GanttLabels, GanttDate, GanttTaskType, GanttLinkType, TrueColor, } from "../../../../common/gantt";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { GanttLinkPoint, TrueColor } from "../../../../common/gantt";
|
|
2
|
+
/** A rubber-band path preview for an in-flight dependency drag. */
|
|
3
|
+
export interface GanttRubberPreview {
|
|
4
|
+
d: string;
|
|
5
|
+
color: TrueColor;
|
|
6
|
+
/** Arrowhead polygon (present when the pointer is over a target bar). */
|
|
7
|
+
arrow?: string;
|
|
8
|
+
/** Port anchors: source right edge and the target left edge / pointer. */
|
|
9
|
+
from: GanttLinkPoint;
|
|
10
|
+
to: GanttLinkPoint;
|
|
11
|
+
}
|