flikkui 0.2.0-beta.1 → 0.2.0-beta.4
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/README.md +12 -539
- package/dist/components/ai/PromptInput/PromptInput.js +94 -4
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.d.ts +27 -0
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.js +62 -0
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.theme.d.ts +10 -0
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.theme.js +12 -0
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.types.d.ts +53 -0
- package/dist/components/ai/PromptSuggestions/index.d.ts +4 -2
- package/dist/components/ai/index.d.ts +2 -12
- package/dist/components/charts/ActivityRings/ActivityRings.js +70 -58
- package/dist/components/charts/ActivityRings/ActivityRings.theme.js +0 -1
- package/dist/components/charts/ActivityRings/ActivityRings.types.d.ts +17 -0
- package/dist/components/charts/BarChart/BarChart.js +8 -4
- package/dist/components/charts/BarChart/BarChart.types.d.ts +14 -0
- package/dist/components/charts/DonutChart/DonutChart.js +11 -8
- package/dist/components/charts/DonutChart/DonutChart.theme.d.ts +3 -0
- package/dist/components/charts/DonutChart/DonutChart.theme.js +5 -4
- package/dist/components/charts/DonutChart/donut-utils.d.ts +5 -0
- package/dist/components/charts/DonutChart/donut-utils.js +26 -1
- package/dist/components/charts/Heatmap/Heatmap.theme.js +2 -2
- package/dist/components/charts/shared/ChartAxis/XAxis.d.ts +2 -2
- package/dist/components/charts/shared/ChartAxis/XAxis.js +4 -4
- package/dist/components/charts/shared/ChartAxis/YAxis.d.ts +2 -2
- package/dist/components/charts/shared/ChartAxis/YAxis.js +8 -7
- package/dist/components/charts/shared/ChartGrid/HorizontalGrid.d.ts +1 -1
- package/dist/components/charts/shared/ChartGrid/HorizontalGrid.js +2 -2
- package/dist/components/charts/theme/chart.theme.d.ts +1 -1
- package/dist/components/charts/theme/chart.theme.js +39 -39
- package/dist/components/core/Accordion/Accordion.d.ts +1 -1
- package/dist/components/core/Accordion/Accordion.js +2 -2
- package/dist/components/core/Accordion/Accordion.types.d.ts +8 -0
- package/dist/components/core/Badge/Badge.js +11 -15
- package/dist/components/core/Badge/Badge.theme.js +7 -21
- package/dist/components/core/Badge/Badge.types.d.ts +9 -1
- package/dist/components/core/Button/Button.js +2 -2
- package/dist/components/core/Button/Button.theme.js +1 -1
- package/dist/components/core/Button/Button.types.d.ts +8 -0
- package/dist/components/core/Card/Card.js +8 -2
- package/dist/components/core/Card/Card.theme.js +1 -1
- package/dist/components/core/Card/Card.types.d.ts +24 -1
- package/dist/components/core/Drawer/Drawer.d.ts +1 -1
- package/dist/components/core/Drawer/Drawer.js +10 -40
- package/dist/components/core/Drawer/Drawer.theme.js +2 -1
- package/dist/components/core/Drawer/Drawer.types.d.ts +8 -0
- package/dist/components/core/Dropdown/Dropdown.d.ts +1 -1
- package/dist/components/core/Dropdown/Dropdown.js +2 -2
- package/dist/components/core/Dropdown/Dropdown.types.d.ts +8 -0
- package/dist/components/core/Metric/Metric.d.ts +1 -1
- package/dist/components/core/Metric/Metric.js +9 -5
- package/dist/components/core/Metric/Metric.theme.d.ts +1 -1
- package/dist/components/core/Metric/Metric.theme.js +38 -28
- package/dist/components/core/Metric/Metric.types.d.ts +27 -8
- package/dist/components/core/Modal/Modal.d.ts +1 -1
- package/dist/components/core/Modal/Modal.js +17 -40
- package/dist/components/core/Modal/Modal.theme.js +8 -3
- package/dist/components/core/Modal/Modal.types.d.ts +18 -0
- package/dist/components/core/Modal/index.d.ts +1 -1
- package/dist/components/core/Notification/Notification.js +67 -0
- package/dist/components/core/Pill/Pill.d.ts +6 -11
- package/dist/components/core/Pill/Pill.theme.d.ts +2 -2
- package/dist/components/core/Pill/Pill.types.d.ts +9 -22
- package/dist/components/core/Pill/index.d.ts +1 -1
- package/dist/components/core/Popover/Popover.d.ts +1 -1
- package/dist/components/core/Popover/Popover.js +2 -2
- package/dist/components/core/Popover/Popover.types.d.ts +8 -0
- package/dist/components/core/Progress/Progress.d.ts +28 -0
- package/dist/components/core/Progress/Progress.js +114 -0
- package/dist/components/core/Progress/Progress.theme.d.ts +5 -0
- package/dist/components/core/Progress/Progress.theme.js +33 -0
- package/dist/components/core/Progress/Progress.types.d.ts +92 -0
- package/dist/components/core/Progress/index.d.ts +2 -0
- package/dist/components/core/Tabs/Tabs.js +2 -2
- package/dist/components/core/Tabs/Tabs.types.d.ts +8 -0
- package/dist/components/core/Tag/Tag.animations.d.ts +3 -0
- package/dist/components/core/Tag/Tag.animations.js +31 -0
- package/dist/components/core/Tag/Tag.d.ts +14 -0
- package/dist/components/core/Tag/Tag.js +45 -0
- package/dist/components/core/Tag/Tag.theme.d.ts +2 -0
- package/dist/components/core/Tag/Tag.theme.js +21 -0
- package/dist/components/core/Tag/Tag.types.d.ts +40 -0
- package/dist/components/core/Tag/index.d.ts +3 -0
- package/dist/components/core/Tooltip/Tooltip.d.ts +1 -1
- package/dist/components/core/Tooltip/Tooltip.js +3 -3
- package/dist/components/core/Tooltip/Tooltip.theme.js +1 -1
- package/dist/components/core/Tooltip/Tooltip.types.d.ts +17 -0
- package/dist/components/core/index.d.ts +2 -1
- package/dist/components/core/index.js +3 -2
- package/dist/components/effects/CustomCursor/CustomCursor.d.ts +0 -13
- package/dist/components/effects/CustomCursor/CustomCursor.js +26 -2
- package/dist/components/effects/CustomCursor/CustomCursor.theme.js +12 -1
- package/dist/components/effects/CustomCursor/CustomCursor.types.d.ts +14 -1
- package/dist/components/forms/Combobox/Combobox.d.ts +25 -0
- package/dist/components/forms/Combobox/Combobox.js +412 -0
- package/dist/components/forms/Combobox/Combobox.theme.d.ts +6 -0
- package/dist/components/forms/Combobox/Combobox.theme.js +60 -0
- package/dist/components/forms/Combobox/Combobox.types.d.ts +111 -0
- package/dist/components/forms/Combobox/index.d.ts +3 -0
- package/dist/components/forms/FileUpload/FileUpload.js +68 -0
- package/dist/components/forms/Input/Input.js +25 -28
- package/dist/components/forms/Input/inputMasks.d.ts +15 -0
- package/dist/components/forms/Input/inputMasks.js +72 -1
- package/dist/components/forms/InputTag/InputTag.d.ts +40 -0
- package/dist/components/forms/InputTag/InputTag.js +491 -0
- package/dist/components/forms/InputTag/InputTag.theme.d.ts +2 -0
- package/dist/components/forms/InputTag/InputTag.theme.js +16 -0
- package/dist/components/forms/InputTag/InputTag.types.d.ts +107 -0
- package/dist/components/forms/InputTag/index.d.ts +3 -0
- package/dist/components/forms/Select/Select.d.ts +101 -2
- package/dist/components/forms/Select/Select.js +128 -132
- package/dist/components/forms/Select/Select.theme.js +10 -14
- package/dist/components/forms/Select/Select.types.d.ts +6 -2
- package/dist/components/forms/Select/index.d.ts +7 -4
- package/dist/components/forms/Select/useSelectState.d.ts +66 -0
- package/dist/components/forms/Select/useSelectState.js +134 -0
- package/dist/components/forms/SelectExpand/SelectExpand.animations.d.ts +20 -0
- package/dist/components/forms/SelectExpand/SelectExpand.animations.js +74 -0
- package/dist/components/forms/SelectExpand/SelectExpand.d.ts +9 -0
- package/dist/components/forms/SelectExpand/SelectExpand.js +223 -0
- package/dist/components/forms/SelectExpand/SelectExpand.theme.d.ts +5 -0
- package/dist/components/forms/SelectExpand/SelectExpand.theme.js +74 -0
- package/dist/components/forms/SelectExpand/SelectExpand.types.d.ts +126 -0
- package/dist/components/forms/SelectExpand/index.d.ts +4 -0
- package/dist/components/forms/Switch/Switch.js +3 -3
- package/dist/components/forms/Switch/Switch.theme.d.ts +1 -1
- package/dist/components/forms/Switch/Switch.theme.js +2 -2
- package/dist/components/forms/TimePicker/TimePicker.animations.d.ts +0 -46
- package/dist/components/forms/TimePicker/TimePicker.d.ts +15 -6
- package/dist/components/forms/TimePicker/TimePicker.js +285 -124
- package/dist/components/forms/TimePicker/TimePicker.theme.d.ts +1 -1
- package/dist/components/forms/TimePicker/TimePicker.theme.js +39 -22
- package/dist/components/forms/TimePicker/TimePicker.types.d.ts +88 -34
- package/dist/components/forms/TimePicker/TimePickerContent.d.ts +7 -10
- package/dist/components/forms/TimePicker/TimePickerContent.js +149 -16
- package/dist/components/forms/TimePicker/TimePickerTrigger.d.ts +3 -3
- package/dist/components/forms/TimePicker/TimePickerTrigger.js +22 -19
- package/dist/components/forms/TimePicker/WheelColumn.d.ts +14 -0
- package/dist/components/forms/TimePicker/WheelColumn.js +90 -0
- package/dist/components/forms/TimePicker/index.d.ts +4 -1
- package/dist/components/forms/TimePicker/useWheelPicker.d.ts +37 -0
- package/dist/components/forms/TimePicker/useWheelPicker.js +138 -0
- package/dist/components/forms/forms.theme.d.ts +14 -0
- package/dist/components/forms/forms.theme.js +31 -0
- package/dist/components/forms/index.d.ts +9 -3
- package/dist/components/forms/index.js +73 -2
- package/dist/hooks/index.d.ts +0 -4
- package/dist/icons/Icon.d.ts +7 -0
- package/dist/icons/Icon.js +6 -2
- package/dist/index.js +62 -63
- package/dist/styles.css +1 -1
- package/dist/utils/index.d.ts +0 -1
- package/dist/utils/optimisticErrors.js +1 -70
- package/package.json +1 -1
- package/dist/components/ai/EditingIndicator/EditingIndicator.animations.d.ts +0 -31
- package/dist/components/ai/EditingIndicator/EditingIndicator.animations.js +0 -115
- package/dist/components/ai/EditingIndicator/EditingIndicator.d.ts +0 -35
- package/dist/components/ai/EditingIndicator/EditingIndicator.js +0 -94
- package/dist/components/ai/EditingIndicator/EditingIndicator.theme.d.ts +0 -2
- package/dist/components/ai/EditingIndicator/EditingIndicator.theme.js +0 -13
- package/dist/components/ai/EditingIndicator/EditingIndicator.types.d.ts +0 -54
- package/dist/components/ai/EditingIndicator/index.d.ts +0 -9
- package/dist/components/ai/GenerativeRenderer/GenerativeRenderer.d.ts +0 -3
- package/dist/components/ai/GenerativeRenderer/GenerativeRenderer.js +0 -126
- package/dist/components/ai/GenerativeRenderer/GenerativeRenderer.theme.d.ts +0 -2
- package/dist/components/ai/GenerativeRenderer/GenerativeRenderer.theme.js +0 -8
- package/dist/components/ai/GenerativeRenderer/GenerativeRenderer.types.d.ts +0 -45
- package/dist/components/ai/GenerativeRenderer/index.d.ts +0 -3
- package/dist/components/ai/PresenceIndicator/PresenceIndicator.animations.d.ts +0 -17
- package/dist/components/ai/PresenceIndicator/PresenceIndicator.animations.js +0 -56
- package/dist/components/ai/PresenceIndicator/PresenceIndicator.d.ts +0 -38
- package/dist/components/ai/PresenceIndicator/PresenceIndicator.js +0 -110
- package/dist/components/ai/PresenceIndicator/PresenceIndicator.theme.d.ts +0 -2
- package/dist/components/ai/PresenceIndicator/PresenceIndicator.theme.js +0 -13
- package/dist/components/ai/PresenceIndicator/PresenceIndicator.types.d.ts +0 -53
- package/dist/components/ai/PresenceIndicator/index.d.ts +0 -8
- package/dist/components/ai/PresenceProvider/PresenceContext.d.ts +0 -24
- package/dist/components/ai/PresenceProvider/PresenceContext.js +0 -34
- package/dist/components/ai/PresenceProvider/PresenceProvider.d.ts +0 -32
- package/dist/components/ai/PresenceProvider/PresenceProvider.js +0 -321
- package/dist/components/ai/PresenceProvider/PresenceProvider.types.d.ts +0 -140
- package/dist/components/ai/PresenceProvider/adapters/MockAdapter.d.ts +0 -102
- package/dist/components/ai/PresenceProvider/adapters/MockAdapter.js +0 -331
- package/dist/components/ai/PresenceProvider/adapters/PresenceAdapter.d.ts +0 -93
- package/dist/components/ai/PresenceProvider/adapters/SupabaseAdapter.d.ts +0 -134
- package/dist/components/ai/PresenceProvider/adapters/WebSocketAdapter.d.ts +0 -149
- package/dist/components/ai/PresenceProvider/adapters/index.d.ts +0 -11
- package/dist/components/ai/PresenceProvider/index.d.ts +0 -10
- package/dist/components/ai/PromptSuggestions/PromptSuggestions.d.ts +0 -27
- package/dist/components/ai/PromptSuggestions/PromptSuggestions.js +0 -61
- package/dist/components/ai/PromptSuggestions/PromptSuggestions.types.d.ts +0 -65
- package/dist/components/ai/VersionSlider/VersionSlider.d.ts +0 -3
- package/dist/components/ai/VersionSlider/VersionSlider.js +0 -97
- package/dist/components/ai/VersionSlider/VersionSlider.theme.d.ts +0 -2
- package/dist/components/ai/VersionSlider/VersionSlider.theme.js +0 -18
- package/dist/components/ai/VersionSlider/VersionSlider.types.d.ts +0 -77
- package/dist/components/ai/VersionSlider/index.d.ts +0 -3
- package/dist/components/core/Pill/Pill.animations.js +0 -25
- package/dist/components/core/Pill/Pill.js +0 -145
- package/dist/components/core/Pill/Pill.theme.js +0 -65
- package/dist/components/core/RetryBoundary/RetryBoundary.d.ts +0 -35
- package/dist/components/core/RetryBoundary/RetryBoundary.js +0 -154
- package/dist/components/core/RetryBoundary/RetryBoundary.theme.d.ts +0 -2
- package/dist/components/core/RetryBoundary/RetryBoundary.theme.js +0 -7
- package/dist/components/core/RetryBoundary/RetryBoundary.types.d.ts +0 -51
- package/dist/components/core/RetryBoundary/index.d.ts +0 -3
- package/dist/components/forms/OptimisticForm/OptimisticForm.d.ts +0 -33
- package/dist/components/forms/OptimisticForm/OptimisticForm.js +0 -87
- package/dist/components/forms/OptimisticForm/OptimisticForm.theme.d.ts +0 -2
- package/dist/components/forms/OptimisticForm/OptimisticForm.theme.js +0 -8
- package/dist/components/forms/OptimisticForm/OptimisticForm.types.d.ts +0 -74
- package/dist/components/forms/OptimisticForm/index.d.ts +0 -3
- package/dist/hooks/useOptimisticMutation.d.ts +0 -109
- package/dist/hooks/useOptimisticMutation.js +0 -171
- package/dist/hooks/usePresence.d.ts +0 -88
- package/dist/utils/presenceUtils.d.ts +0 -66
- package/dist/utils/presenceUtils.js +0 -107
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Select option type for SelectExpand
|
|
4
|
+
* @template T The type of the option value
|
|
5
|
+
*/
|
|
6
|
+
export interface SelectExpandOption<T = string> {
|
|
7
|
+
/** Unique identifier for the option */
|
|
8
|
+
id: string | number;
|
|
9
|
+
/** Display label for the option */
|
|
10
|
+
label: string;
|
|
11
|
+
/** Option value */
|
|
12
|
+
value: T;
|
|
13
|
+
/** Whether the option is disabled */
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
/** Optional description for the option */
|
|
16
|
+
description?: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Size variants for SelectExpand
|
|
20
|
+
*/
|
|
21
|
+
export type SelectExpandSize = "sm" | "md" | "lg";
|
|
22
|
+
/**
|
|
23
|
+
* State variants for SelectExpand
|
|
24
|
+
*/
|
|
25
|
+
export type SelectExpandState = "default" | "disabled";
|
|
26
|
+
/**
|
|
27
|
+
* SelectExpand component props
|
|
28
|
+
* @template T The type of the select value
|
|
29
|
+
*/
|
|
30
|
+
export interface SelectExpandProps<T = string> extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange"> {
|
|
31
|
+
/** Array of options to display */
|
|
32
|
+
options: SelectExpandOption<T>[];
|
|
33
|
+
/** Currently selected value(s) - single value or array for multi-select */
|
|
34
|
+
value?: T | T[];
|
|
35
|
+
/** Called when the selection changes */
|
|
36
|
+
onChange?: (value: T | T[]) => void;
|
|
37
|
+
/** Placeholder text when no option is selected */
|
|
38
|
+
placeholder?: string;
|
|
39
|
+
/** Enable multi-select mode (default: false) */
|
|
40
|
+
multiple?: boolean;
|
|
41
|
+
/** Enable search/filter functionality (default: false) */
|
|
42
|
+
searchable?: boolean;
|
|
43
|
+
/** Placeholder text for the search input */
|
|
44
|
+
searchPlaceholder?: string;
|
|
45
|
+
/** Size variant of the component */
|
|
46
|
+
size?: SelectExpandSize;
|
|
47
|
+
/** Maximum height of expanded options panel */
|
|
48
|
+
maxHeight?: string | number;
|
|
49
|
+
/** Whether the component is disabled */
|
|
50
|
+
disabled?: boolean;
|
|
51
|
+
/** Current state of the component */
|
|
52
|
+
state?: SelectExpandState;
|
|
53
|
+
/** Label text displayed above the component */
|
|
54
|
+
label?: string;
|
|
55
|
+
/** Helper text displayed below the component */
|
|
56
|
+
helperText?: string;
|
|
57
|
+
/** Icon to display at the start of the trigger */
|
|
58
|
+
iconStart?: React.ReactNode;
|
|
59
|
+
/** Icon to display at the end of the trigger (default: chevron) */
|
|
60
|
+
iconEnd?: React.ReactNode;
|
|
61
|
+
/** ID for the component */
|
|
62
|
+
id?: string;
|
|
63
|
+
/** Name for form submission */
|
|
64
|
+
name?: string;
|
|
65
|
+
/** Whether the field is required */
|
|
66
|
+
required?: boolean;
|
|
67
|
+
/** Additional class name for the trigger button */
|
|
68
|
+
className?: string;
|
|
69
|
+
/** Additional class name for the outer wrapper */
|
|
70
|
+
wrapperClassName?: string;
|
|
71
|
+
/** Theme overrides */
|
|
72
|
+
theme?: SelectExpandThemeOverrides;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Theme configuration for SelectExpand component
|
|
76
|
+
*/
|
|
77
|
+
export interface SelectExpandTheme {
|
|
78
|
+
/** Wrapper style (outermost container) */
|
|
79
|
+
wrapperStyle: string;
|
|
80
|
+
/** Container style (animated container) */
|
|
81
|
+
containerStyle: string;
|
|
82
|
+
/** Container style when expanded */
|
|
83
|
+
containerExpandedStyle: string;
|
|
84
|
+
/** Trigger button base style */
|
|
85
|
+
triggerStyle: string;
|
|
86
|
+
/** Trigger size variants */
|
|
87
|
+
triggerSizes: Record<SelectExpandSize, string>;
|
|
88
|
+
/** Placeholder text style */
|
|
89
|
+
placeholderStyle: string;
|
|
90
|
+
/** Selected value text style */
|
|
91
|
+
valueStyle: string;
|
|
92
|
+
/** Options panel container style */
|
|
93
|
+
optionsPanelStyle: string;
|
|
94
|
+
/** Scrollable options list style */
|
|
95
|
+
optionsListStyle: string;
|
|
96
|
+
/** Individual option style */
|
|
97
|
+
optionStyle: string;
|
|
98
|
+
/** Selected option style */
|
|
99
|
+
optionSelectedStyle: string;
|
|
100
|
+
/** Disabled option style */
|
|
101
|
+
optionDisabledStyle: string;
|
|
102
|
+
/** Option hover style */
|
|
103
|
+
optionHoverStyle: string;
|
|
104
|
+
/** Checkbox style for multi-select */
|
|
105
|
+
checkboxStyle: string;
|
|
106
|
+
/** Checkbox checked style */
|
|
107
|
+
checkboxCheckedStyle: string;
|
|
108
|
+
/** Search input container style */
|
|
109
|
+
searchContainerStyle: string;
|
|
110
|
+
/** Search input style */
|
|
111
|
+
searchInputStyle: string;
|
|
112
|
+
/** Icon start style */
|
|
113
|
+
iconStartStyle: string;
|
|
114
|
+
/** Icon end style */
|
|
115
|
+
iconEndStyle: string;
|
|
116
|
+
/** Label style */
|
|
117
|
+
labelStyle: string;
|
|
118
|
+
/** Helper text style */
|
|
119
|
+
helperTextStyle: string;
|
|
120
|
+
/** Disabled state style */
|
|
121
|
+
disabledStyle: string;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Theme overrides for SelectExpand component
|
|
125
|
+
*/
|
|
126
|
+
export type SelectExpandThemeOverrides = Partial<SelectExpandTheme>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { SelectExpand } from "./SelectExpand";
|
|
2
|
+
export type { SelectExpandProps, SelectExpandOption, SelectExpandSize, SelectExpandState, SelectExpandTheme, SelectExpandThemeOverrides, } from "./SelectExpand.types";
|
|
3
|
+
export { selectExpandTheme } from "./SelectExpand.theme";
|
|
4
|
+
export { containerAnimations, optionsPanelAnimations, chevronAnimations, optionAnimations, } from "./SelectExpand.animations";
|
|
@@ -33,9 +33,9 @@ const Switch = ({ id, checked: controlledChecked, onChange, label, description,
|
|
|
33
33
|
}
|
|
34
34
|
};
|
|
35
35
|
// Label and description content
|
|
36
|
-
const labelContent =
|
|
37
|
-
label && React__default.createElement(FormLabel, { htmlFor: id, state: state }, label),
|
|
38
|
-
description && React__default.createElement("div", { className: cn(switchTheme.description, theme === null || theme === void 0 ? void 0 : theme.description) }, description))) : null;
|
|
36
|
+
const labelContent = label || description ? (React__default.createElement("div", { className: "flex grow flex-col" },
|
|
37
|
+
label && (React__default.createElement(FormLabel, { htmlFor: id, state: state }, label)),
|
|
38
|
+
description && (React__default.createElement("div", { className: cn(switchTheme.description, theme === null || theme === void 0 ? void 0 : theme.description) }, description)))) : null;
|
|
39
39
|
// Build data attributes for state-based styling
|
|
40
40
|
const trackDataState = isDisabled
|
|
41
41
|
? "disabled"
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
*/
|
|
4
4
|
const switchTheme = {
|
|
5
5
|
container: "flex w-full justify-between items-center gap-4",
|
|
6
|
-
track: "w-
|
|
7
|
-
thumb: "
|
|
6
|
+
track: "w-12 h-6 rounded-full transition-colors cursor-pointer shadow-inner bg-[var(--color-border)] data-[state=checked]:bg-[var(--color-primary)] data-[state=disabled]:bg-[var(--color-background-disabled)] data-[state=disabled]:cursor-not-allowed data-[state=invalid]:border-2 data-[state=invalid]:border-[var(--color-danger)]",
|
|
7
|
+
thumb: "w-7 h-5 rounded-full shadow-md glass-effect !bg-white/80",
|
|
8
8
|
description: "text-sm text-[var(--color-text-muted)] -mt-1.5",
|
|
9
9
|
};
|
|
10
10
|
/**
|
|
@@ -30,44 +30,6 @@ export declare const timePickerAnimations: {
|
|
|
30
30
|
};
|
|
31
31
|
};
|
|
32
32
|
};
|
|
33
|
-
selectorItem: {
|
|
34
|
-
initial: {
|
|
35
|
-
opacity: number;
|
|
36
|
-
x: number;
|
|
37
|
-
};
|
|
38
|
-
animate: {
|
|
39
|
-
opacity: number;
|
|
40
|
-
x: number;
|
|
41
|
-
transition: {
|
|
42
|
-
duration: number;
|
|
43
|
-
ease: string;
|
|
44
|
-
};
|
|
45
|
-
};
|
|
46
|
-
hover: {
|
|
47
|
-
scale: number;
|
|
48
|
-
backgroundColor: string;
|
|
49
|
-
transition: {
|
|
50
|
-
duration: number;
|
|
51
|
-
ease: string;
|
|
52
|
-
};
|
|
53
|
-
};
|
|
54
|
-
tap: {
|
|
55
|
-
scale: number;
|
|
56
|
-
transition: {
|
|
57
|
-
duration: number;
|
|
58
|
-
ease: string;
|
|
59
|
-
};
|
|
60
|
-
};
|
|
61
|
-
selected: {
|
|
62
|
-
scale: number;
|
|
63
|
-
backgroundColor: string;
|
|
64
|
-
borderLeftColor: string;
|
|
65
|
-
transition: {
|
|
66
|
-
duration: number;
|
|
67
|
-
ease: string;
|
|
68
|
-
};
|
|
69
|
-
};
|
|
70
|
-
};
|
|
71
33
|
clearButton: {
|
|
72
34
|
initial: {
|
|
73
35
|
opacity: number;
|
|
@@ -112,14 +74,6 @@ export declare const timePickerAnimations: {
|
|
|
112
74
|
};
|
|
113
75
|
};
|
|
114
76
|
};
|
|
115
|
-
selectorColumns: {
|
|
116
|
-
animate: {
|
|
117
|
-
transition: {
|
|
118
|
-
staggerChildren: number;
|
|
119
|
-
delayChildren: number;
|
|
120
|
-
};
|
|
121
|
-
};
|
|
122
|
-
};
|
|
123
77
|
inputField: {
|
|
124
78
|
focus: {
|
|
125
79
|
borderColor: string;
|
|
@@ -1,17 +1,26 @@
|
|
|
1
|
-
import React from
|
|
2
|
-
import { TimePickerProps } from
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { TimePickerProps } from "./TimePicker.types";
|
|
3
3
|
interface TimePickerContextType {
|
|
4
4
|
isOpen: boolean;
|
|
5
5
|
setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;
|
|
6
|
-
theme:
|
|
7
|
-
triggerRef: React.RefObject<
|
|
6
|
+
theme: ReturnType<typeof Object.assign>;
|
|
7
|
+
triggerRef: React.RefObject<HTMLDivElement | null>;
|
|
8
|
+
inputRef: React.RefObject<HTMLInputElement | null>;
|
|
8
9
|
hasValue: boolean;
|
|
9
|
-
size:
|
|
10
|
-
state:
|
|
10
|
+
size: "sm" | "md" | "lg";
|
|
11
|
+
state: "default" | "disabled" | "invalid";
|
|
11
12
|
}
|
|
12
13
|
export declare const TimePickerContext: React.Context<TimePickerContextType | undefined>;
|
|
13
14
|
/**
|
|
14
15
|
* Main TimePicker Component
|
|
16
|
+
*
|
|
17
|
+
* Features:
|
|
18
|
+
* - iOS-style scroll wheel picker
|
|
19
|
+
* - Combobox-style masked input trigger with direct keyboard entry
|
|
20
|
+
* - Live bidirectional sync between input and wheels
|
|
21
|
+
* - 12h and 24h format support with AM/PM toggle
|
|
22
|
+
* - Cancel/Save workflow for confirming selection
|
|
23
|
+
* - Validation with min/max time constraints
|
|
15
24
|
*/
|
|
16
25
|
export declare const TimePicker: React.FC<TimePickerProps>;
|
|
17
26
|
export {};
|