@salilvnair/dui 1.0.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.
Files changed (116) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +185 -0
  3. package/dist/chunks/EditorView.shell-BGH2VhWM.js +460 -0
  4. package/dist/chunks/EditorView.shell-BGH2VhWM.js.map +1 -0
  5. package/dist/chunks/daakia-icons-DxWnX_IQ.js +1726 -0
  6. package/dist/chunks/daakia-icons-DxWnX_IQ.js.map +1 -0
  7. package/dist/icons/daakia-icons.d.ts +304 -0
  8. package/dist/index.d.ts +2 -0
  9. package/dist/index.js +17032 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/lib/components/button/AIButtonView.d.ts +20 -0
  12. package/dist/lib/components/button/ButtonView.d.ts +28 -0
  13. package/dist/lib/components/button/DropDownButtonView.d.ts +19 -0
  14. package/dist/lib/components/button/IconButtonView.d.ts +22 -0
  15. package/dist/lib/components/button/SegmentedView.d.ts +17 -0
  16. package/dist/lib/components/button/SplitButtonView.d.ts +23 -0
  17. package/dist/lib/components/chips/ChipView.d.ts +21 -0
  18. package/dist/lib/components/display/CodeBlockView.d.ts +11 -0
  19. package/dist/lib/components/display/ColoredTextView.d.ts +18 -0
  20. package/dist/lib/components/display/CopyButtonView.d.ts +11 -0
  21. package/dist/lib/components/display/DataTableView.d.ts +27 -0
  22. package/dist/lib/components/display/DottedCardView.d.ts +10 -0
  23. package/dist/lib/components/display/EmptyStateView.d.ts +14 -0
  24. package/dist/lib/components/display/ExpandableLogEntryView.d.ts +14 -0
  25. package/dist/lib/components/display/FeatureCategoryView.d.ts +18 -0
  26. package/dist/lib/components/display/HudView.d.ts +25 -0
  27. package/dist/lib/components/display/JsonTreeView.d.ts +11 -0
  28. package/dist/lib/components/display/LiveColorCustomizer.d.ts +21 -0
  29. package/dist/lib/components/display/LoaderView.d.ts +12 -0
  30. package/dist/lib/components/display/MarkdownView.d.ts +19 -0
  31. package/dist/lib/components/display/PromptCardView.d.ts +33 -0
  32. package/dist/lib/components/display/PromptLibraryEditorView.d.ts +32 -0
  33. package/dist/lib/components/display/PromptLibraryListView.d.ts +30 -0
  34. package/dist/lib/components/display/StageView.d.ts +26 -0
  35. package/dist/lib/components/display/StatsCardView.d.ts +15 -0
  36. package/dist/lib/components/display/StatusIndicatorView.d.ts +14 -0
  37. package/dist/lib/components/display/ToastView.d.ts +19 -0
  38. package/dist/lib/components/display/YamlKeyChip.d.ts +15 -0
  39. package/dist/lib/components/input/CheckboxView.d.ts +15 -0
  40. package/dist/lib/components/input/DebugEditorView.d.ts +26 -0
  41. package/dist/lib/components/input/DiffEditorView.d.ts +18 -0
  42. package/dist/lib/components/input/DiffEditorView.fallback.d.ts +2 -0
  43. package/dist/lib/components/input/DiffEditorView.monaco.d.ts +2 -0
  44. package/dist/lib/components/input/DurationInputView.d.ts +15 -0
  45. package/dist/lib/components/input/EditorView.d.ts +222 -0
  46. package/dist/lib/components/input/EditorView.fallback.d.ts +10 -0
  47. package/dist/lib/components/input/EditorView.monaco.d.ts +2 -0
  48. package/dist/lib/components/input/EditorView.shell.d.ts +13 -0
  49. package/dist/lib/components/input/FormDataTableView.d.ts +22 -0
  50. package/dist/lib/components/input/HiddenKeyValueItemView.d.ts +22 -0
  51. package/dist/lib/components/input/HighlightedInputView.d.ts +26 -0
  52. package/dist/lib/components/input/KeyValueTableRowView.d.ts +31 -0
  53. package/dist/lib/components/input/KeyValueTableView.d.ts +59 -0
  54. package/dist/lib/components/input/MergedInputView.d.ts +43 -0
  55. package/dist/lib/components/input/MultilineInputView.d.ts +15 -0
  56. package/dist/lib/components/input/SearchInputView.d.ts +17 -0
  57. package/dist/lib/components/input/SegmentedControlView.d.ts +23 -0
  58. package/dist/lib/components/input/SelectInputView.d.ts +31 -0
  59. package/dist/lib/components/input/SelectTextInputView.d.ts +44 -0
  60. package/dist/lib/components/input/SliderView.d.ts +15 -0
  61. package/dist/lib/components/input/TabView.d.ts +28 -0
  62. package/dist/lib/components/input/TagInputView.d.ts +10 -0
  63. package/dist/lib/components/input/TextInputView.d.ts +36 -0
  64. package/dist/lib/components/input/ThemeCardSelectorView.d.ts +18 -0
  65. package/dist/lib/components/input/ToggleSwitchView.d.ts +19 -0
  66. package/dist/lib/components/layout/BottomPanelView.d.ts +16 -0
  67. package/dist/lib/components/layout/CollapsibleSectionView.d.ts +14 -0
  68. package/dist/lib/components/layout/DebugView.d.ts +63 -0
  69. package/dist/lib/components/layout/FolderView.d.ts +85 -0
  70. package/dist/lib/components/layout/ResizablePanelView.d.ts +10 -0
  71. package/dist/lib/components/layout/SettingsNavView.d.ts +29 -0
  72. package/dist/lib/components/layout/SideNavView.d.ts +39 -0
  73. package/dist/lib/components/layout/SpacerView.d.ts +7 -0
  74. package/dist/lib/components/layout/SplitPanelView.d.ts +33 -0
  75. package/dist/lib/components/modal/ContextMenuView.d.ts +28 -0
  76. package/dist/lib/components/modal/InfoPopupView.d.ts +17 -0
  77. package/dist/lib/components/modal/ModalView.d.ts +41 -0
  78. package/dist/lib/components/rearrange/RearrangeView.d.ts +34 -0
  79. package/dist/lib/components/tabs/PilledTabView.d.ts +19 -0
  80. package/dist/lib/components/tabs/TabBarView.d.ts +28 -0
  81. package/dist/lib/components/tabs/TabView.d.ts +34 -0
  82. package/dist/lib/core/ButtonBase.d.ts +28 -0
  83. package/dist/lib/core/CardBase.d.ts +21 -0
  84. package/dist/lib/core/ChipBase.d.ts +21 -0
  85. package/dist/lib/core/DisplayBase.d.ts +21 -0
  86. package/dist/lib/core/DuiContext.d.ts +53 -0
  87. package/dist/lib/core/DuiTokens.d.ts +115 -0
  88. package/dist/lib/core/DuiTypes.d.ts +29 -0
  89. package/dist/lib/core/EditorBase.d.ts +13 -0
  90. package/dist/lib/core/InputBase.d.ts +25 -0
  91. package/dist/lib/core/MenuBase.d.ts +23 -0
  92. package/dist/lib/core/NavBase.d.ts +26 -0
  93. package/dist/lib/core/OverlayBase.d.ts +20 -0
  94. package/dist/lib/core/SelectBase.d.ts +22 -0
  95. package/dist/lib/core/TabBase.d.ts +25 -0
  96. package/dist/lib/core/TableBase.d.ts +19 -0
  97. package/dist/lib/core/ToggleBase.d.ts +19 -0
  98. package/dist/lib/core/index.d.ts +25 -0
  99. package/dist/lib/index.d.ts +159 -0
  100. package/dist/lib/monaco-runtime.d.ts +29 -0
  101. package/dist/lib/theme/core.d.ts +8 -0
  102. package/dist/lib/theme/editor.d.ts +11 -0
  103. package/dist/lib/theme/utils.d.ts +6 -0
  104. package/dist/monaco-setup.d.ts +4 -0
  105. package/dist/monaco-setup.js +883 -0
  106. package/dist/monaco-setup.js.map +1 -0
  107. package/dist/style.css +1 -0
  108. package/dist/style.js +2 -0
  109. package/dist/style.js.map +1 -0
  110. package/dist/theme/core.js +191 -0
  111. package/dist/theme/core.js.map +1 -0
  112. package/dist/theme/editor.js +104 -0
  113. package/dist/theme/editor.js.map +1 -0
  114. package/dist/theme/utils.js +67 -0
  115. package/dist/theme/utils.js.map +1 -0
  116. package/package.json +81 -0
@@ -0,0 +1,21 @@
1
+ import { DuiSize, DuiRadius, DuiFontStyle } from './DuiTypes';
2
+ export interface CardBaseConfig {
3
+ fontSize: string;
4
+ borderRadius: string;
5
+ padding: string;
6
+ gap: string;
7
+ color: string | undefined;
8
+ fontStyle: DuiFontStyle | undefined;
9
+ }
10
+ /** Local override props that any card component can accept. */
11
+ export interface CardContainerProps {
12
+ borderRadius?: DuiRadius | number;
13
+ color?: string;
14
+ fontStyle?: DuiFontStyle;
15
+ }
16
+ /**
17
+ * Category base for: PromptCardView, RequestCardView, EnvironmentCardView,
18
+ * and any future card/list-item component.
19
+ * Falls back to DuiProvider values when no local prop is given.
20
+ */
21
+ export declare function useCardBase(sizeProp?: DuiSize, overrides?: CardContainerProps): CardBaseConfig;
@@ -0,0 +1,21 @@
1
+ import { DuiSize, DuiRadius, DuiFontStyle } from './DuiTypes';
2
+ export interface ChipBaseConfig {
3
+ height: string;
4
+ fontSize: string;
5
+ paddingX: string;
6
+ borderRadius: string;
7
+ color: string | undefined;
8
+ fontStyle: DuiFontStyle | undefined;
9
+ }
10
+ /** Local override props that any chip/badge component can accept. */
11
+ export interface ChipContainerProps {
12
+ borderRadius?: DuiRadius | number;
13
+ color?: string;
14
+ fontStyle?: DuiFontStyle;
15
+ }
16
+ /**
17
+ * Category base for: ChipView, StatusBadgeView, CountBadgeView.
18
+ * Chips always default to 'full' (pill) radius — context borderRadius overrides that.
19
+ * Falls back to DuiProvider values when no local prop is given.
20
+ */
21
+ export declare function useChipBase(sizeProp?: DuiSize, overrides?: ChipContainerProps): ChipBaseConfig;
@@ -0,0 +1,21 @@
1
+ import { DuiSize, DuiRadius, DuiFontStyle } from './DuiTypes';
2
+ export interface DisplayBaseConfig {
3
+ fontSize: string;
4
+ iconSize: number;
5
+ borderRadius: string;
6
+ gap: string;
7
+ color: string | undefined;
8
+ fontStyle: DuiFontStyle | undefined;
9
+ }
10
+ /** Local override props that any display component can accept. */
11
+ export interface DisplayContainerProps {
12
+ borderRadius?: DuiRadius | number;
13
+ color?: string;
14
+ fontStyle?: DuiFontStyle;
15
+ }
16
+ /**
17
+ * Category base for: LabelView, EmptyStateView, PromptCardView, FeatureCategoryView,
18
+ * StatusBadgeView, InfoPopup, and any future read-only display component.
19
+ * Falls back to DuiProvider values when no local prop is given.
20
+ */
21
+ export declare function useDisplayBase(sizeProp?: DuiSize, overrides?: DisplayContainerProps): DisplayBaseConfig;
@@ -0,0 +1,53 @@
1
+ import { ReactNode } from 'react';
2
+ import { DuiConfig, DuiSize, DuiRadius, DuiWidth, DuiFontStyle } from './DuiTypes';
3
+ /**
4
+ * Wrap any subtree to give all DUI components a shared set of default props.
5
+ * Every prop is optional and falls back to its system default when omitted.
6
+ *
7
+ * @example
8
+ * <DuiProvider size="sm" borderRadius="lg" activeColor="var(--color-primary)">
9
+ * <ButtonView>Save</ButtonView>
10
+ * </DuiProvider>
11
+ */
12
+ export declare function DuiProvider({ size, width, borderRadius, color, defaultColor, activeColor, fontStyle, children, }: {
13
+ size?: DuiSize;
14
+ width?: DuiWidth;
15
+ borderRadius?: DuiRadius | number;
16
+ color?: string;
17
+ defaultColor?: string;
18
+ activeColor?: string;
19
+ fontStyle?: DuiFontStyle;
20
+ children: ReactNode;
21
+ }): import("react").JSX.Element;
22
+ /**
23
+ * Returns the current DUI config. Components call this and fall back to the
24
+ * context values when no explicit prop is passed.
25
+ *
26
+ * @example
27
+ * const { size } = useDui();
28
+ * const resolved = sizeProp ?? size;
29
+ */
30
+ export declare function useDui(): DuiConfig;
31
+ /**
32
+ * Resolves the border-radius value from either a DuiConfig override
33
+ * (preset name or raw px number) or the size-derived default.
34
+ */
35
+ export declare function resolveBorderRadius(override: DuiRadius | number | undefined, sizeFallback: string): string;
36
+ /**
37
+ * Resolves a width preset to a CSS string.
38
+ * Falls back to `'auto'` when no width is set.
39
+ */
40
+ export declare function resolveWidth(width: DuiWidth | undefined): string;
41
+ /**
42
+ * Convenience hook — returns resolved border-radius and width strings
43
+ * plus raw color/style overrides from the current DUI context.
44
+ * Components call this to merge context defaults with their own prop overrides.
45
+ */
46
+ export declare function useDuiStyle(sizeFallback: string): {
47
+ borderRadius: string;
48
+ width: string;
49
+ color: string | undefined;
50
+ defaultColor: string | undefined;
51
+ activeColor: string | undefined;
52
+ fontStyle: DuiFontStyle | undefined;
53
+ };
@@ -0,0 +1,115 @@
1
+ import { DuiSize, DuiRadius, DuiWidth } from './DuiTypes';
2
+ /** Heights (px) per size × category */
3
+ export declare const DUI_HEIGHT: {
4
+ /** Standard form controls: text input, select, duration, search, highlighted input */
5
+ readonly input: {
6
+ readonly xxs: 16;
7
+ readonly xs: 20;
8
+ readonly sm: 24;
9
+ readonly md: 28;
10
+ readonly lg: 36;
11
+ readonly xl: 40;
12
+ readonly xxl: 48;
13
+ readonly xxxl: 56;
14
+ };
15
+ /** Push buttons (primary, secondary, ghost, danger) */
16
+ readonly button: {
17
+ readonly xxs: 16;
18
+ readonly xs: 20;
19
+ readonly sm: 24;
20
+ readonly md: 28;
21
+ readonly lg: 36;
22
+ readonly xl: 40;
23
+ readonly xxl: 48;
24
+ readonly xxxl: 56;
25
+ };
26
+ /** Pill tabs, segment controls */
27
+ readonly tab: {
28
+ readonly xxs: 16;
29
+ readonly xs: 20;
30
+ readonly sm: 24;
31
+ readonly md: 28;
32
+ readonly lg: 36;
33
+ readonly xl: 40;
34
+ readonly xxl: 48;
35
+ readonly xxxl: 56;
36
+ };
37
+ /** Sidebar nav items, settings nav links */
38
+ readonly nav: {
39
+ readonly xxs: 20;
40
+ readonly xs: 24;
41
+ readonly sm: 28;
42
+ readonly md: 32;
43
+ readonly lg: 36;
44
+ readonly xl: 44;
45
+ readonly xxl: 52;
46
+ readonly xxxl: 60;
47
+ };
48
+ /** Context-menu items, dropdown options, sub-menu rows */
49
+ readonly menu: {
50
+ readonly xxs: 14;
51
+ readonly xs: 18;
52
+ readonly sm: 22;
53
+ readonly md: 26;
54
+ readonly lg: 30;
55
+ readonly xl: 36;
56
+ readonly xxl: 42;
57
+ readonly xxxl: 48;
58
+ };
59
+ /** Table / KV-table rows */
60
+ readonly table: {
61
+ readonly xxs: 18;
62
+ readonly xs: 22;
63
+ readonly sm: 26;
64
+ readonly md: 30;
65
+ readonly lg: 36;
66
+ readonly xl: 40;
67
+ readonly xxl: 46;
68
+ readonly xxxl: 54;
69
+ };
70
+ /** Card container min-height (loosely applied) */
71
+ readonly card: {
72
+ readonly xxs: 28;
73
+ readonly xs: 36;
74
+ readonly sm: 48;
75
+ readonly md: 64;
76
+ readonly lg: 80;
77
+ readonly xl: 96;
78
+ readonly xxl: 112;
79
+ readonly xxxl: 128;
80
+ };
81
+ };
82
+ /** Chip / badge heights */
83
+ export declare const DUI_CHIP_HEIGHT: Record<DuiSize, number>;
84
+ /** Toggle track dimensions (trackW, trackH, thumb) */
85
+ export declare const DUI_TOGGLE: Record<DuiSize, {
86
+ trackW: number;
87
+ trackH: number;
88
+ thumb: number;
89
+ }>;
90
+ /**
91
+ * Checkbox box and inner icon sizes (px).
92
+ * Centralised here so components never define ad-hoc local maps.
93
+ */
94
+ export declare const DUI_CHECKBOX: Record<DuiSize, {
95
+ box: number;
96
+ icon: number;
97
+ }>;
98
+ /** Icon sizes (px) — used for icons inside buttons, inputs, menus */
99
+ export declare const DUI_ICON_SIZE: Record<DuiSize, number>;
100
+ /** Font sizes (px) */
101
+ export declare const DUI_FONT_SIZE: Record<DuiSize, string>;
102
+ /** Vertical padding (px) for dropdown / select option rows */
103
+ export declare const DUI_SELECT_ITEM_PY: Record<DuiSize, string>;
104
+ /** Editor (Monaco) font sizes (px) — larger than DUI_FONT_SIZE since code is harder to read at label sizes */
105
+ export declare const DUI_EDITOR_FONT_SIZE: Record<DuiSize, number>;
106
+ /** Horizontal padding (px) */
107
+ export declare const DUI_PADDING_X: Record<DuiSize, string>;
108
+ /** Gap between icon and text inside a component (px) */
109
+ export declare const DUI_GAP: Record<DuiSize, string>;
110
+ /** Border-radius presets (px) */
111
+ export declare const DUI_RADIUS_MAP: Record<DuiRadius, string>;
112
+ /** Default border-radius per size */
113
+ export declare const DUI_DEFAULT_RADIUS: Record<DuiSize, string>;
114
+ /** Width presets for DUI components. */
115
+ export declare const DUI_WIDTH_MAP: Record<DuiWidth, string>;
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Eight canonical sizes for all DUI components.
3
+ * DuiProvider is the "parent" — every component inherits from it unless overridden.
4
+ *
5
+ */
6
+ export type DuiSize = 'xxs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'xxxl';
7
+ /** Named radius presets — components may also accept a raw number. */
8
+ export type DuiRadius = 'none' | 'sm' | 'md' | 'lg' | 'full';
9
+ /** Width presets for DUI components. */
10
+ export type DuiWidth = 'sm' | 'md' | 'default' | 'lg' | 'fullWidth' | 'maxContent' | 'fw' | 'mx';
11
+ /** Font style override. */
12
+ export type DuiFontStyle = 'normal' | 'italic';
13
+ /** Global DUI context shape. */
14
+ export interface DuiConfig {
15
+ /** Default size inherited by all DUI components when no local size prop is passed. */
16
+ size: DuiSize;
17
+ /** Default width preset. Components that support width read this as their default. */
18
+ width?: DuiWidth;
19
+ /** Border-radius preset or raw px number. Overrides the size-derived default. */
20
+ borderRadius?: DuiRadius | number;
21
+ /** Text color override (CSS var or value, e.g. `var(--color-text-primary)`). */
22
+ color?: string;
23
+ /** Primary/accent color used for interactive highlights (buttons, selections). */
24
+ defaultColor?: string;
25
+ /** Color for active / selected states (tabs, nav items, toggles). */
26
+ activeColor?: string;
27
+ /** Font style applied to all text within the DUI subtree. */
28
+ fontStyle?: DuiFontStyle;
29
+ }
@@ -0,0 +1,13 @@
1
+ import { DuiSize } from './DuiTypes';
2
+ export interface EditorBaseConfig {
3
+ fontSize: number;
4
+ }
5
+ /** Reserved for future editor-level overrides (e.g. minLines, theme override). */
6
+ export interface EditorContainerProps {
7
+ }
8
+ /**
9
+ * Category base for EditorView (Monaco-based editors).
10
+ * Reads the DuiProvider size context so every editor automatically inherits
11
+ * the app-level size without a local prop. Pass `sizeProp` to override per-instance.
12
+ */
13
+ export declare function useEditorBase(sizeProp?: DuiSize, _overrides?: EditorContainerProps): EditorBaseConfig;
@@ -0,0 +1,25 @@
1
+ import { DuiSize, DuiRadius, DuiWidth, DuiFontStyle } from './DuiTypes';
2
+ export interface InputBaseConfig {
3
+ height: string;
4
+ fontSize: string;
5
+ iconSize: number;
6
+ borderRadius: string;
7
+ paddingX: string;
8
+ gap: string;
9
+ width: string;
10
+ color: string | undefined;
11
+ fontStyle: DuiFontStyle | undefined;
12
+ }
13
+ /** Local override props that any input component can accept. */
14
+ export interface InputContainerProps {
15
+ width?: DuiWidth;
16
+ borderRadius?: DuiRadius | number;
17
+ color?: string;
18
+ fontStyle?: DuiFontStyle;
19
+ }
20
+ /**
21
+ * Category base for: TextInputView, SearchInputView, DurationInputView,
22
+ * HighlightedInputView, NumberInputView, TextAreaView, and any future text-input component.
23
+ * Falls back to DuiProvider values when no local prop is given.
24
+ */
25
+ export declare function useInputBase(sizeProp?: DuiSize, overrides?: InputContainerProps): InputBaseConfig;
@@ -0,0 +1,23 @@
1
+ import { DuiSize, DuiRadius, DuiFontStyle } from './DuiTypes';
2
+ export interface MenuBaseConfig {
3
+ itemHeight: string;
4
+ fontSize: string;
5
+ iconSize: number;
6
+ borderRadius: string;
7
+ paddingX: string;
8
+ gap: string;
9
+ color: string | undefined;
10
+ fontStyle: DuiFontStyle | undefined;
11
+ }
12
+ /** Local override props that any menu component can accept. */
13
+ export interface MenuContainerProps {
14
+ borderRadius?: DuiRadius | number;
15
+ color?: string;
16
+ fontStyle?: DuiFontStyle;
17
+ }
18
+ /**
19
+ * Category base for: StyledDropdown options, ContextMenuView items, submenu rows,
20
+ * SelectInputView options, and any future menu/dropdown component.
21
+ * Falls back to DuiProvider values when no local prop is given.
22
+ */
23
+ export declare function useMenuBase(sizeProp?: DuiSize, overrides?: MenuContainerProps): MenuBaseConfig;
@@ -0,0 +1,26 @@
1
+ import { DuiSize, DuiRadius, DuiFontStyle } from './DuiTypes';
2
+ export interface NavBaseConfig {
3
+ /** Nav item row height — intentionally taller than inputs for click comfort */
4
+ itemHeight: string;
5
+ fontSize: string;
6
+ iconSize: number;
7
+ borderRadius: string;
8
+ gap: string;
9
+ paddingX: string;
10
+ color: string | undefined;
11
+ activeColor: string | undefined;
12
+ fontStyle: DuiFontStyle | undefined;
13
+ }
14
+ /** Local override props that any nav component can accept. */
15
+ export interface NavContainerProps {
16
+ borderRadius?: DuiRadius | number;
17
+ color?: string;
18
+ activeColor?: string;
19
+ fontStyle?: DuiFontStyle;
20
+ }
21
+ /**
22
+ * Category base for: SideNavView, SettingsNavView, BreadcrumbView, TabBarView,
23
+ * and any future navigation component.
24
+ * Falls back to DuiProvider values when no local prop is given.
25
+ */
26
+ export declare function useNavBase(sizeProp?: DuiSize, overrides?: NavContainerProps): NavBaseConfig;
@@ -0,0 +1,20 @@
1
+ import { DuiSize, DuiRadius } from './DuiTypes';
2
+ export interface OverlayBaseConfig {
3
+ fontSize: string;
4
+ borderRadius: string;
5
+ headerFontSize: string;
6
+ paddingX: string;
7
+ paddingY: string;
8
+ color: string | undefined;
9
+ }
10
+ /** Local override props that any overlay component can accept. */
11
+ export interface OverlayContainerProps {
12
+ borderRadius?: DuiRadius | number;
13
+ color?: string;
14
+ }
15
+ /**
16
+ * Category base for: ModalView, ToastView, TooltipView, PopoverView, DrawerView.
17
+ * Overlays use slightly larger radius for a "floating" feel.
18
+ * Falls back to DuiProvider values when no local prop is given.
19
+ */
20
+ export declare function useOverlayBase(sizeProp?: DuiSize, overrides?: OverlayContainerProps): OverlayBaseConfig;
@@ -0,0 +1,22 @@
1
+ import { DuiSize, DuiRadius, DuiWidth } from './DuiTypes';
2
+ export interface SelectBaseConfig {
3
+ height: string;
4
+ fontSize: string;
5
+ iconSize: number;
6
+ borderRadius: string;
7
+ paddingX: string;
8
+ gap: string;
9
+ width: string;
10
+ color: string | undefined;
11
+ itemPy: string;
12
+ }
13
+ export interface SelectContainerProps {
14
+ width?: DuiWidth;
15
+ borderRadius?: DuiRadius | number;
16
+ color?: string;
17
+ }
18
+ /**
19
+ * Category base for: SelectInputView, StyledDropdown, and any future picker component.
20
+ * Falls back to DuiProvider values when no local prop is given.
21
+ */
22
+ export declare function useSelectBase(sizeProp?: DuiSize, overrides?: SelectContainerProps): SelectBaseConfig;
@@ -0,0 +1,25 @@
1
+ import { DuiSize, DuiRadius, DuiWidth, DuiFontStyle } from './DuiTypes';
2
+ export interface TabBaseConfig {
3
+ height: string;
4
+ fontSize: string;
5
+ gap: string;
6
+ borderRadius: string;
7
+ paddingX: string;
8
+ width: string;
9
+ color: string | undefined;
10
+ activeColor: string | undefined;
11
+ fontStyle: DuiFontStyle | undefined;
12
+ }
13
+ /** Local override props that any tab component can accept. */
14
+ export interface TabContainerProps {
15
+ width?: DuiWidth;
16
+ borderRadius?: DuiRadius | number;
17
+ color?: string;
18
+ activeColor?: string;
19
+ fontStyle?: DuiFontStyle;
20
+ }
21
+ /**
22
+ * Category base for: PillTabsView, SegmentTabsView, TabView, and any future tab/segment component.
23
+ * Falls back to DuiProvider values when no local prop is given.
24
+ */
25
+ export declare function useTabBase(sizeProp?: DuiSize, overrides?: TabContainerProps): TabBaseConfig;
@@ -0,0 +1,19 @@
1
+ import { DuiSize, DuiFontStyle } from './DuiTypes';
2
+ export interface TableBaseConfig {
3
+ rowHeight: string;
4
+ headerFontSize: string;
5
+ cellFontSize: string;
6
+ paddingX: string;
7
+ color: string | undefined;
8
+ fontStyle: DuiFontStyle | undefined;
9
+ }
10
+ /** Local override props that any table component can accept. */
11
+ export interface TableContainerProps {
12
+ color?: string;
13
+ fontStyle?: DuiFontStyle;
14
+ }
15
+ /**
16
+ * Category base for: KeyValueTableView, DataTableView, and any future table component.
17
+ * Falls back to DuiProvider values when no local prop is given.
18
+ */
19
+ export declare function useTableBase(sizeProp?: DuiSize, overrides?: TableContainerProps): TableBaseConfig;
@@ -0,0 +1,19 @@
1
+ import { DuiSize } from './DuiTypes';
2
+ export interface ToggleBaseConfig {
3
+ trackW: number;
4
+ trackH: number;
5
+ thumb: number;
6
+ fontSize: string;
7
+ activeColor: string | undefined;
8
+ color: string | undefined;
9
+ }
10
+ /** Local override props that any toggle/checkbox component can accept. */
11
+ export interface ToggleContainerProps {
12
+ activeColor?: string;
13
+ color?: string;
14
+ }
15
+ /**
16
+ * Category base for: ToggleSwitchView, CheckboxView, RadioButtonView.
17
+ * Falls back to DuiProvider values when no local prop is given.
18
+ */
19
+ export declare function useToggleBase(sizeProp?: DuiSize, overrides?: ToggleContainerProps): ToggleBaseConfig;
@@ -0,0 +1,25 @@
1
+ export type { DuiSize, DuiRadius, DuiWidth, DuiFontStyle, DuiConfig } from './DuiTypes';
2
+ export { DUI_HEIGHT, DUI_CHIP_HEIGHT, DUI_TOGGLE, DUI_CHECKBOX, DUI_ICON_SIZE, DUI_FONT_SIZE, DUI_PADDING_X, DUI_GAP, DUI_RADIUS_MAP, DUI_DEFAULT_RADIUS, DUI_WIDTH_MAP, } from './DuiTokens';
3
+ export { DuiProvider, useDui, useDuiStyle, resolveBorderRadius, resolveWidth } from './DuiContext';
4
+ export type { InputBaseConfig, InputContainerProps } from './InputBase';
5
+ export { useInputBase } from './InputBase';
6
+ export type { ButtonBaseConfig, ButtonContainerProps } from './ButtonBase';
7
+ export { useButtonBase } from './ButtonBase';
8
+ export type { NavBaseConfig, NavContainerProps } from './NavBase';
9
+ export { useNavBase } from './NavBase';
10
+ export type { ChipBaseConfig, ChipContainerProps } from './ChipBase';
11
+ export { useChipBase } from './ChipBase';
12
+ export type { ToggleBaseConfig, ToggleContainerProps } from './ToggleBase';
13
+ export { useToggleBase } from './ToggleBase';
14
+ export type { MenuBaseConfig, MenuContainerProps } from './MenuBase';
15
+ export { useMenuBase } from './MenuBase';
16
+ export type { TabBaseConfig, TabContainerProps } from './TabBase';
17
+ export { useTabBase } from './TabBase';
18
+ export type { TableBaseConfig, TableContainerProps } from './TableBase';
19
+ export { useTableBase } from './TableBase';
20
+ export type { DisplayBaseConfig, DisplayContainerProps } from './DisplayBase';
21
+ export { useDisplayBase } from './DisplayBase';
22
+ export type { OverlayBaseConfig, OverlayContainerProps } from './OverlayBase';
23
+ export { useOverlayBase } from './OverlayBase';
24
+ export type { CardBaseConfig, CardContainerProps } from './CardBase';
25
+ export { useCardBase } from './CardBase';