blimpui 0.0.1
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/$/components/primitives/accordion.d.ts +9 -0
- package/dist/$/components/primitives/accordion.d.ts.map +1 -0
- package/dist/$/components/primitives/accordion.js +64 -0
- package/dist/$/components/primitives/alert-dialog.d.ts +31 -0
- package/dist/$/components/primitives/alert-dialog.d.ts.map +1 -0
- package/dist/$/components/primitives/alert-dialog.js +74 -0
- package/dist/$/components/primitives/alert.d.ts +13 -0
- package/dist/$/components/primitives/alert.d.ts.map +1 -0
- package/dist/$/components/primitives/alert.js +42 -0
- package/dist/$/components/primitives/aspect-ratio.d.ts +2 -0
- package/dist/$/components/primitives/aspect-ratio.d.ts.map +1 -0
- package/dist/$/components/primitives/aspect-ratio.js +1 -0
- package/dist/$/components/primitives/avatar.d.ts +6 -0
- package/dist/$/components/primitives/avatar.d.ts.map +1 -0
- package/dist/$/components/primitives/avatar.js +38 -0
- package/dist/$/components/primitives/badge.d.ts +15 -0
- package/dist/$/components/primitives/badge.d.ts.map +1 -0
- package/dist/$/components/primitives/badge.js +64 -0
- package/dist/$/components/primitives/button.d.ts +37 -0
- package/dist/$/components/primitives/button.d.ts.map +1 -0
- package/dist/$/components/primitives/button.js +100 -0
- package/dist/$/components/primitives/calendar/calendar-header.d.ts +13 -0
- package/dist/$/components/primitives/calendar/calendar-header.d.ts.map +1 -0
- package/dist/$/components/primitives/calendar/calendar-header.js +15 -0
- package/dist/$/components/primitives/calendar/calendar-month-grid.d.ts +14 -0
- package/dist/$/components/primitives/calendar/calendar-month-grid.d.ts.map +1 -0
- package/dist/$/components/primitives/calendar/calendar-month-grid.js +29 -0
- package/dist/$/components/primitives/calendar/calendar-weekdays-row.d.ts +8 -0
- package/dist/$/components/primitives/calendar/calendar-weekdays-row.d.ts.map +1 -0
- package/dist/$/components/primitives/calendar/calendar-weekdays-row.js +36 -0
- package/dist/$/components/primitives/calendar/constants.d.ts +3 -0
- package/dist/$/components/primitives/calendar/constants.d.ts.map +1 -0
- package/dist/$/components/primitives/calendar/constants.js +15 -0
- package/dist/$/components/primitives/calendar/date-utils.d.ts +14 -0
- package/dist/$/components/primitives/calendar/date-utils.d.ts.map +1 -0
- package/dist/$/components/primitives/calendar/date-utils.js +77 -0
- package/dist/$/components/primitives/calendar/month-year-overlay.d.ts +14 -0
- package/dist/$/components/primitives/calendar/month-year-overlay.d.ts.map +1 -0
- package/dist/$/components/primitives/calendar/month-year-overlay.js +11 -0
- package/dist/$/components/primitives/calendar/types.d.ts +24 -0
- package/dist/$/components/primitives/calendar/types.d.ts.map +1 -0
- package/dist/$/components/primitives/calendar/types.js +1 -0
- package/dist/$/components/primitives/calendar/use-calendar-shell.d.ts +35 -0
- package/dist/$/components/primitives/calendar/use-calendar-shell.d.ts.map +1 -0
- package/dist/$/components/primitives/calendar/use-calendar-shell.js +95 -0
- package/dist/$/components/primitives/calendar/use-controllable-state.d.ts +8 -0
- package/dist/$/components/primitives/calendar/use-controllable-state.d.ts.map +1 -0
- package/dist/$/components/primitives/calendar/use-controllable-state.js +13 -0
- package/dist/$/components/primitives/calendar.d.ts +5 -0
- package/dist/$/components/primitives/calendar.d.ts.map +1 -0
- package/dist/$/components/primitives/calendar.js +48 -0
- package/dist/$/components/primitives/card.d.ts +10 -0
- package/dist/$/components/primitives/card.d.ts.map +1 -0
- package/dist/$/components/primitives/card.js +51 -0
- package/dist/$/components/primitives/checkbox.d.ts +8 -0
- package/dist/$/components/primitives/checkbox.d.ts.map +1 -0
- package/dist/$/components/primitives/checkbox.js +37 -0
- package/dist/$/components/primitives/collapsible.d.ts +2 -0
- package/dist/$/components/primitives/collapsible.d.ts.map +1 -0
- package/dist/$/components/primitives/collapsible.js +1 -0
- package/dist/$/components/primitives/context-menu.d.ts +61 -0
- package/dist/$/components/primitives/context-menu.d.ts.map +1 -0
- package/dist/$/components/primitives/context-menu.js +101 -0
- package/dist/$/components/primitives/dialog.d.ts +35 -0
- package/dist/$/components/primitives/dialog.d.ts.map +1 -0
- package/dist/$/components/primitives/dialog.js +68 -0
- package/dist/$/components/primitives/dropdown-menu.d.ts +61 -0
- package/dist/$/components/primitives/dropdown-menu.d.ts.map +1 -0
- package/dist/$/components/primitives/dropdown-menu.js +102 -0
- package/dist/$/components/primitives/hover-card.d.ts +18 -0
- package/dist/$/components/primitives/hover-card.d.ts.map +1 -0
- package/dist/$/components/primitives/hover-card.js +41 -0
- package/dist/$/components/primitives/icon.d.ts +27 -0
- package/dist/$/components/primitives/icon.d.ts.map +1 -0
- package/dist/$/components/primitives/icon.js +64 -0
- package/dist/$/components/primitives/input.d.ts +5 -0
- package/dist/$/components/primitives/input.d.ts.map +1 -0
- package/dist/$/components/primitives/input.js +38 -0
- package/dist/$/components/primitives/label.d.ts +4 -0
- package/dist/$/components/primitives/label.d.ts.map +1 -0
- package/dist/$/components/primitives/label.js +33 -0
- package/dist/$/components/primitives/list.d.ts +9 -0
- package/dist/$/components/primitives/list.d.ts.map +1 -0
- package/dist/$/components/primitives/list.js +155 -0
- package/dist/$/components/primitives/menubar.d.ts +57 -0
- package/dist/$/components/primitives/menubar.d.ts.map +1 -0
- package/dist/$/components/primitives/menubar.js +115 -0
- package/dist/$/components/primitives/multi-column-wheelpicker/index.d.ts +2 -0
- package/dist/$/components/primitives/multi-column-wheelpicker/index.d.ts.map +1 -0
- package/dist/$/components/primitives/multi-column-wheelpicker/index.js +1 -0
- package/dist/$/components/primitives/multi-column-wheelpicker/multi-column-wheelpicker.d.ts +35 -0
- package/dist/$/components/primitives/multi-column-wheelpicker/multi-column-wheelpicker.d.ts.map +1 -0
- package/dist/$/components/primitives/multi-column-wheelpicker/multi-column-wheelpicker.js +62 -0
- package/dist/$/components/primitives/native-only-animated-view.d.ts +13 -0
- package/dist/$/components/primitives/native-only-animated-view.d.ts.map +1 -0
- package/dist/$/components/primitives/native-only-animated-view.js +32 -0
- package/dist/$/components/primitives/popover.d.ts +18 -0
- package/dist/$/components/primitives/popover.d.ts.map +1 -0
- package/dist/$/components/primitives/popover.js +41 -0
- package/dist/$/components/primitives/pressable.d.ts +14 -0
- package/dist/$/components/primitives/pressable.d.ts.map +1 -0
- package/dist/$/components/primitives/pressable.js +39 -0
- package/dist/$/components/primitives/progress.d.ts +6 -0
- package/dist/$/components/primitives/progress.d.ts.map +1 -0
- package/dist/$/components/primitives/progress.js +60 -0
- package/dist/$/components/primitives/radio-group.d.ts +5 -0
- package/dist/$/components/primitives/radio-group.d.ts.map +1 -0
- package/dist/$/components/primitives/radio-group.js +37 -0
- package/dist/$/components/primitives/range-calendar/index.d.ts +2 -0
- package/dist/$/components/primitives/range-calendar/index.d.ts.map +1 -0
- package/dist/$/components/primitives/range-calendar/index.js +1 -0
- package/dist/$/components/primitives/range-calendar/range-calendar.d.ts +25 -0
- package/dist/$/components/primitives/range-calendar/range-calendar.d.ts.map +1 -0
- package/dist/$/components/primitives/range-calendar/range-calendar.js +170 -0
- package/dist/$/components/primitives/select.d.ts +59 -0
- package/dist/$/components/primitives/select.d.ts.map +1 -0
- package/dist/$/components/primitives/select.js +119 -0
- package/dist/$/components/primitives/separator.d.ts +4 -0
- package/dist/$/components/primitives/separator.d.ts.map +1 -0
- package/dist/$/components/primitives/separator.js +30 -0
- package/dist/$/components/primitives/skeleton.d.ts +5 -0
- package/dist/$/components/primitives/skeleton.d.ts.map +1 -0
- package/dist/$/components/primitives/skeleton.js +39 -0
- package/dist/$/components/primitives/switch.d.ts +4 -0
- package/dist/$/components/primitives/switch.d.ts.map +1 -0
- package/dist/$/components/primitives/switch.js +37 -0
- package/dist/$/components/primitives/tabs.d.ts +7 -0
- package/dist/$/components/primitives/tabs.d.ts.map +1 -0
- package/dist/$/components/primitives/tabs.js +48 -0
- package/dist/$/components/primitives/text.d.ts +13 -0
- package/dist/$/components/primitives/text.d.ts.map +1 -0
- package/dist/$/components/primitives/text.js +73 -0
- package/dist/$/components/primitives/textarea.d.ts +5 -0
- package/dist/$/components/primitives/textarea.d.ts.map +1 -0
- package/dist/$/components/primitives/textarea.js +33 -0
- package/dist/$/components/primitives/toast/index.d.ts +2 -0
- package/dist/$/components/primitives/toast/index.d.ts.map +1 -0
- package/dist/$/components/primitives/toast/index.js +1 -0
- package/dist/$/components/primitives/toast/index.web.d.ts +2 -0
- package/dist/$/components/primitives/toast/index.web.d.ts.map +1 -0
- package/dist/$/components/primitives/toast/index.web.js +1 -0
- package/dist/$/components/primitives/toggle-group.d.ts +13 -0
- package/dist/$/components/primitives/toggle-group.d.ts.map +1 -0
- package/dist/$/components/primitives/toggle-group.js +65 -0
- package/dist/$/components/primitives/toggle.d.ts +12 -0
- package/dist/$/components/primitives/toggle.d.ts.map +1 -0
- package/dist/$/components/primitives/toggle.js +63 -0
- package/dist/$/components/primitives/tooltip.d.ts +21 -0
- package/dist/$/components/primitives/tooltip.d.ts.map +1 -0
- package/dist/$/components/primitives/tooltip.js +47 -0
- package/dist/$/components/primitives/view.d.ts +15 -0
- package/dist/$/components/primitives/view.d.ts.map +1 -0
- package/dist/$/components/primitives/view.js +37 -0
- package/dist/$/components/primitives/wheelpicker/index.d.ts +4 -0
- package/dist/$/components/primitives/wheelpicker/index.d.ts.map +1 -0
- package/dist/$/components/primitives/wheelpicker/index.js +3 -0
- package/dist/$/components/primitives/wheelpicker/types.d.ts +7 -0
- package/dist/$/components/primitives/wheelpicker/types.d.ts.map +1 -0
- package/dist/$/components/primitives/wheelpicker/types.js +1 -0
- package/dist/$/components/primitives/wheelpicker/use-wheel-picker-value.d.ts +16 -0
- package/dist/$/components/primitives/wheelpicker/use-wheel-picker-value.d.ts.map +1 -0
- package/dist/$/components/primitives/wheelpicker/use-wheel-picker-value.js +43 -0
- package/dist/$/components/primitives/wheelpicker/wheel-picker-item.d.ts +11 -0
- package/dist/$/components/primitives/wheelpicker/wheel-picker-item.d.ts.map +1 -0
- package/dist/$/components/primitives/wheelpicker/wheel-picker-item.js +8 -0
- package/dist/$/components/primitives/wheelpicker/wheel-picker-list.d.ts +18 -0
- package/dist/$/components/primitives/wheelpicker/wheel-picker-list.d.ts.map +1 -0
- package/dist/$/components/primitives/wheelpicker/wheel-picker-list.js +253 -0
- package/dist/$/components/primitives/wheelpicker/wheelpicker.d.ts +17 -0
- package/dist/$/components/primitives/wheelpicker/wheelpicker.d.ts.map +1 -0
- package/dist/$/components/primitives/wheelpicker/wheelpicker.js +15 -0
- package/dist/$/components/ui/accordion.d.ts +17 -0
- package/dist/$/components/ui/accordion.d.ts.map +1 -0
- package/dist/$/components/ui/accordion.js +39 -0
- package/dist/$/components/ui/alert-dialog.d.ts +22 -0
- package/dist/$/components/ui/alert-dialog.d.ts.map +1 -0
- package/dist/$/components/ui/alert-dialog.js +92 -0
- package/dist/$/components/ui/alert.d.ts +14 -0
- package/dist/$/components/ui/alert.d.ts.map +1 -0
- package/dist/$/components/ui/alert.js +31 -0
- package/dist/$/components/ui/aspect-ratio.d.ts +2 -0
- package/dist/$/components/ui/aspect-ratio.d.ts.map +1 -0
- package/dist/$/components/ui/aspect-ratio.js +1 -0
- package/dist/$/components/ui/avatar.d.ts +14 -0
- package/dist/$/components/ui/avatar.d.ts.map +1 -0
- package/dist/$/components/ui/avatar.js +33 -0
- package/dist/$/components/ui/badge.d.ts +2 -0
- package/dist/$/components/ui/badge.d.ts.map +1 -0
- package/dist/$/components/ui/badge.js +1 -0
- package/dist/$/components/ui/button.d.ts +2 -0
- package/dist/$/components/ui/button.d.ts.map +1 -0
- package/dist/$/components/ui/button.js +1 -0
- package/dist/$/components/ui/calendar.d.ts +2 -0
- package/dist/$/components/ui/calendar.d.ts.map +1 -0
- package/dist/$/components/ui/calendar.js +1 -0
- package/dist/$/components/ui/card.d.ts +17 -0
- package/dist/$/components/ui/card.d.ts.map +1 -0
- package/dist/$/components/ui/card.js +33 -0
- package/dist/$/components/ui/checkbox.d.ts +2 -0
- package/dist/$/components/ui/checkbox.d.ts.map +1 -0
- package/dist/$/components/ui/checkbox.js +1 -0
- package/dist/$/components/ui/collapsible.d.ts +12 -0
- package/dist/$/components/ui/collapsible.d.ts.map +1 -0
- package/dist/$/components/ui/collapsible.js +33 -0
- package/dist/$/components/ui/context-menu.d.ts +59 -0
- package/dist/$/components/ui/context-menu.d.ts.map +1 -0
- package/dist/$/components/ui/context-menu.js +66 -0
- package/dist/$/components/ui/date-range-picker.d.ts +26 -0
- package/dist/$/components/ui/date-range-picker.d.ts.map +1 -0
- package/dist/$/components/ui/date-range-picker.js +89 -0
- package/dist/$/components/ui/datepicker.d.ts +26 -0
- package/dist/$/components/ui/datepicker.d.ts.map +1 -0
- package/dist/$/components/ui/datepicker.js +81 -0
- package/dist/$/components/ui/dialog.d.ts +18 -0
- package/dist/$/components/ui/dialog.d.ts.map +1 -0
- package/dist/$/components/ui/dialog.js +33 -0
- package/dist/$/components/ui/dropdown-menu.d.ts +59 -0
- package/dist/$/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/$/components/ui/dropdown-menu.js +79 -0
- package/dist/$/components/ui/form-field/form-field-label.d.ts +15 -0
- package/dist/$/components/ui/form-field/form-field-label.d.ts.map +1 -0
- package/dist/$/components/ui/form-field/form-field-label.js +15 -0
- package/dist/$/components/ui/form-field/form-field-message.d.ts +11 -0
- package/dist/$/components/ui/form-field/form-field-message.d.ts.map +1 -0
- package/dist/$/components/ui/form-field/form-field-message.js +10 -0
- package/dist/$/components/ui/form-field/index.d.ts +48 -0
- package/dist/$/components/ui/form-field/index.d.ts.map +1 -0
- package/dist/$/components/ui/form-field/index.js +80 -0
- package/dist/$/components/ui/form-field/use-form-field-animation.d.ts +8 -0
- package/dist/$/components/ui/form-field/use-form-field-animation.d.ts.map +1 -0
- package/dist/$/components/ui/form-field/use-form-field-animation.js +23 -0
- package/dist/$/components/ui/form-field/use-form-field.d.ts +28 -0
- package/dist/$/components/ui/form-field/use-form-field.d.ts.map +1 -0
- package/dist/$/components/ui/form-field/use-form-field.js +55 -0
- package/dist/$/components/ui/hover-card.d.ts +12 -0
- package/dist/$/components/ui/hover-card.d.ts.map +1 -0
- package/dist/$/components/ui/hover-card.js +33 -0
- package/dist/$/components/ui/icon.d.ts +2 -0
- package/dist/$/components/ui/icon.d.ts.map +1 -0
- package/dist/$/components/ui/icon.js +1 -0
- package/dist/$/components/ui/input.d.ts +30 -0
- package/dist/$/components/ui/input.d.ts.map +1 -0
- package/dist/$/components/ui/input.js +60 -0
- package/dist/$/components/ui/label.d.ts +2 -0
- package/dist/$/components/ui/label.d.ts.map +1 -0
- package/dist/$/components/ui/label.js +1 -0
- package/dist/$/components/ui/list.d.ts +2 -0
- package/dist/$/components/ui/list.d.ts.map +1 -0
- package/dist/$/components/ui/list.js +1 -0
- package/dist/$/components/ui/menubar.d.ts +63 -0
- package/dist/$/components/ui/menubar.d.ts.map +1 -0
- package/dist/$/components/ui/menubar.js +66 -0
- package/dist/$/components/ui/multi-column-wheelpicker.d.ts +2 -0
- package/dist/$/components/ui/multi-column-wheelpicker.d.ts.map +1 -0
- package/dist/$/components/ui/multi-column-wheelpicker.js +1 -0
- package/dist/$/components/ui/native-only-animated-view.d.ts +2 -0
- package/dist/$/components/ui/native-only-animated-view.d.ts.map +1 -0
- package/dist/$/components/ui/native-only-animated-view.js +1 -0
- package/dist/$/components/ui/picker.d.ts +25 -0
- package/dist/$/components/ui/picker.d.ts.map +1 -0
- package/dist/$/components/ui/picker.js +80 -0
- package/dist/$/components/ui/popover.d.ts +34 -0
- package/dist/$/components/ui/popover.d.ts.map +1 -0
- package/dist/$/components/ui/popover.js +63 -0
- package/dist/$/components/ui/pressable.d.ts +2 -0
- package/dist/$/components/ui/pressable.d.ts.map +1 -0
- package/dist/$/components/ui/pressable.js +1 -0
- package/dist/$/components/ui/progress.d.ts +2 -0
- package/dist/$/components/ui/progress.d.ts.map +1 -0
- package/dist/$/components/ui/progress.js +1 -0
- package/dist/$/components/ui/radio-group.d.ts +15 -0
- package/dist/$/components/ui/radio-group.d.ts.map +1 -0
- package/dist/$/components/ui/radio-group.js +41 -0
- package/dist/$/components/ui/range-calendar.d.ts +2 -0
- package/dist/$/components/ui/range-calendar.d.ts.map +1 -0
- package/dist/$/components/ui/range-calendar.js +1 -0
- package/dist/$/components/ui/select.d.ts +75 -0
- package/dist/$/components/ui/select.d.ts.map +1 -0
- package/dist/$/components/ui/select.js +105 -0
- package/dist/$/components/ui/separator.d.ts +2 -0
- package/dist/$/components/ui/separator.d.ts.map +1 -0
- package/dist/$/components/ui/separator.js +1 -0
- package/dist/$/components/ui/skeleton.d.ts +2 -0
- package/dist/$/components/ui/skeleton.d.ts.map +1 -0
- package/dist/$/components/ui/skeleton.js +1 -0
- package/dist/$/components/ui/switch.d.ts +2 -0
- package/dist/$/components/ui/switch.d.ts.map +1 -0
- package/dist/$/components/ui/switch.js +1 -0
- package/dist/$/components/ui/tabs.d.ts +17 -0
- package/dist/$/components/ui/tabs.d.ts.map +1 -0
- package/dist/$/components/ui/tabs.js +48 -0
- package/dist/$/components/ui/text.d.ts +2 -0
- package/dist/$/components/ui/text.d.ts.map +1 -0
- package/dist/$/components/ui/text.js +1 -0
- package/dist/$/components/ui/textarea.d.ts +30 -0
- package/dist/$/components/ui/textarea.d.ts.map +1 -0
- package/dist/$/components/ui/textarea.js +61 -0
- package/dist/$/components/ui/timepicker.d.ts +26 -0
- package/dist/$/components/ui/timepicker.d.ts.map +1 -0
- package/dist/$/components/ui/timepicker.js +90 -0
- package/dist/$/components/ui/timewheelpicker.d.ts +22 -0
- package/dist/$/components/ui/timewheelpicker.d.ts.map +1 -0
- package/dist/$/components/ui/timewheelpicker.js +112 -0
- package/dist/$/components/ui/toggle-group.d.ts +14 -0
- package/dist/$/components/ui/toggle-group.d.ts.map +1 -0
- package/dist/$/components/ui/toggle-group.js +44 -0
- package/dist/$/components/ui/toggle.d.ts +2 -0
- package/dist/$/components/ui/toggle.d.ts.map +1 -0
- package/dist/$/components/ui/toggle.js +1 -0
- package/dist/$/components/ui/tooltip.d.ts +12 -0
- package/dist/$/components/ui/tooltip.d.ts.map +1 -0
- package/dist/$/components/ui/tooltip.js +33 -0
- package/dist/$/components/ui/view.d.ts +2 -0
- package/dist/$/components/ui/view.d.ts.map +1 -0
- package/dist/$/components/ui/view.js +1 -0
- package/dist/$/components/ui/wheelpicker.d.ts +2 -0
- package/dist/$/components/ui/wheelpicker.d.ts.map +1 -0
- package/dist/$/components/ui/wheelpicker.js +1 -0
- package/dist/$/lib/hooks/useExtractTextClasses.d.ts +2 -0
- package/dist/$/lib/hooks/useExtractTextClasses.d.ts.map +1 -0
- package/dist/$/lib/hooks/useExtractTextClasses.js +62 -0
- package/dist/$/lib/utils/renderNode.d.ts +3 -0
- package/dist/$/lib/utils/renderNode.d.ts.map +1 -0
- package/dist/$/lib/utils/renderNode.js +22 -0
- package/dist/$/lib/utils.d.ts +5 -0
- package/dist/$/lib/utils.d.ts.map +1 -0
- package/dist/$/lib/utils.js +32 -0
- package/dist/index.d.ts +44 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +43 -0
- package/package.json +69 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { TextInput, type TextInputProps } from "react-native";
|
|
3
|
+
import { type FormFieldProps } from "./form-field";
|
|
4
|
+
type TextareaFieldProps = {
|
|
5
|
+
/**
|
|
6
|
+
* Class name for the outer FormField container. This leaves `className` for the textarea itself.
|
|
7
|
+
*/
|
|
8
|
+
wrapperClassName?: string;
|
|
9
|
+
/** Optional focus callback tied to the floating label container. */
|
|
10
|
+
onFieldFocus?: FormFieldProps["onFocus"];
|
|
11
|
+
/** Optional blur callback tied to the floating label container. */
|
|
12
|
+
onFieldBlur?: FormFieldProps["onBlur"];
|
|
13
|
+
} & Omit<FormFieldProps, "children" | "className" | "onFocus" | "onBlur" | "placeholder"> & (TextInputProps & {
|
|
14
|
+
placeholderTextColorClassName?: string;
|
|
15
|
+
});
|
|
16
|
+
declare const TextareaField: React.ForwardRefExoticComponent<{
|
|
17
|
+
/**
|
|
18
|
+
* Class name for the outer FormField container. This leaves `className` for the textarea itself.
|
|
19
|
+
*/
|
|
20
|
+
wrapperClassName?: string;
|
|
21
|
+
/** Optional focus callback tied to the floating label container. */
|
|
22
|
+
onFieldFocus?: FormFieldProps["onFocus"];
|
|
23
|
+
/** Optional blur callback tied to the floating label container. */
|
|
24
|
+
onFieldBlur?: FormFieldProps["onBlur"];
|
|
25
|
+
} & Omit<FormFieldProps, "children" | "className" | "onBlur" | "onFocus" | "placeholder"> & TextInputProps & {
|
|
26
|
+
placeholderTextColorClassName?: string;
|
|
27
|
+
} & React.RefAttributes<TextInput>>;
|
|
28
|
+
export { TextareaField as Textarea };
|
|
29
|
+
export type { TextareaFieldProps };
|
|
30
|
+
//# sourceMappingURL=textarea.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../../../$/components/ui/textarea.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAEN,SAAS,EAGT,KAAK,cAAc,EACnB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9D,KAAK,kBAAkB,GAAG;IACzB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oEAAoE;IACpE,YAAY,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACzC,mEAAmE;IACnE,WAAW,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;CACvC,GAAG,IAAI,CACP,cAAc,EACd,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,aAAa,CAC/D,GACA,CAAC,cAAc,GAAG;IAAE,6BAA6B,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE/D,QAAA,MAAM,aAAa;IAdlB;;OAEG;uBACgB,MAAM;IACzB,oEAAoE;mBACrD,cAAc,CAAC,SAAS,CAAC;IACxC,mEAAmE;kBACrD,cAAc,CAAC,QAAQ,CAAC;;oCAKc,MAAM;mCA6F1D,CAAC;AAIF,OAAO,EAAE,aAAa,IAAI,QAAQ,EAAE,CAAC;AACrC,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
|
+
import { cn } from "../../../$/lib/utils";
|
|
25
|
+
import * as React from "react";
|
|
26
|
+
import { Platform, } from "react-native";
|
|
27
|
+
import { Textarea as PrimitiveTextarea } from "../primitives/textarea";
|
|
28
|
+
import { FormField } from "./form-field";
|
|
29
|
+
var TextareaField = React.forwardRef(function (_a, ref) {
|
|
30
|
+
var onValueChange = _a.onValueChange, onFieldFocus = _a.onFieldFocus, onFieldBlur = _a.onFieldBlur, wrapperClassName = _a.wrapperClassName, className = _a.className, labelPlacement = _a.labelPlacement, placeholderTextColorClassName = _a.placeholderTextColorClassName, editable = _a.editable, inputOnChangeText = _a.onChangeText, inputOnFocus = _a.onFocus, inputOnBlur = _a.onBlur, disabled = _a.disabled, _b = _a.numberOfLines, numberOfLines = _b === void 0 ? Platform.select({ web: 2, native: 8 }) : _b, _c = _a.multiline, multiline = _c === void 0 ? true : _c, _d = _a.textAlignVertical, textAlignVertical = _d === void 0 ? "top" : _d, inputProps = __rest(_a, ["onValueChange", "onFieldFocus", "onFieldBlur", "wrapperClassName", "className", "labelPlacement", "placeholderTextColorClassName", "editable", "onChangeText", "onFocus", "onBlur", "disabled", "numberOfLines", "multiline", "textAlignVertical"]);
|
|
31
|
+
var forwardedEditable = disabled ? false : editable;
|
|
32
|
+
var mergeRefs = React.useCallback(function (node, inputRef) {
|
|
33
|
+
inputRef.current = node;
|
|
34
|
+
if (typeof ref === "function") {
|
|
35
|
+
ref(node);
|
|
36
|
+
}
|
|
37
|
+
else if (ref) {
|
|
38
|
+
ref.current = node;
|
|
39
|
+
}
|
|
40
|
+
}, [ref]);
|
|
41
|
+
return (_jsx(FormField, __assign({}, inputProps, { onValueChange: function (text) {
|
|
42
|
+
onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(text);
|
|
43
|
+
inputOnChangeText === null || inputOnChangeText === void 0 ? void 0 : inputOnChangeText(text);
|
|
44
|
+
}, onFocus: onFieldFocus, onBlur: onFieldBlur, disabled: forwardedEditable === false, labelPlacement: labelPlacement, className: wrapperClassName, children: function (_a) {
|
|
45
|
+
var fieldInputProps = _a.inputProps, inputRef = _a.inputRef;
|
|
46
|
+
var handleChangeText = function (text) {
|
|
47
|
+
fieldInputProps.onChangeText(text);
|
|
48
|
+
};
|
|
49
|
+
var handleFocus = function (event) {
|
|
50
|
+
fieldInputProps.onFocus();
|
|
51
|
+
inputOnFocus === null || inputOnFocus === void 0 ? void 0 : inputOnFocus(event);
|
|
52
|
+
};
|
|
53
|
+
var handleBlur = function (event) {
|
|
54
|
+
fieldInputProps.onBlur();
|
|
55
|
+
inputOnBlur === null || inputOnBlur === void 0 ? void 0 : inputOnBlur(event);
|
|
56
|
+
};
|
|
57
|
+
return (_jsx(PrimitiveTextarea, __assign({ ref: function (node) { return mergeRefs(node, inputRef); } }, fieldInputProps, inputProps, { multiline: multiline, numberOfLines: numberOfLines, textAlignVertical: textAlignVertical, editable: forwardedEditable, onChangeText: handleChangeText, onFocus: handleFocus, onBlur: handleBlur, className: cn("border-none bg-transparent px-0 pt-2 pb-2 text-base leading-[1.4]", className), placeholderTextColorClassName: placeholderTextColorClassName })));
|
|
58
|
+
} })));
|
|
59
|
+
});
|
|
60
|
+
TextareaField.displayName = "TextareaField";
|
|
61
|
+
export { TextareaField as Textarea };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type TimeWheelPickerFormat, type TimeWheelPickerProps as WheelPickerProps, type TimeWheelPickerValue } from "./timewheelpicker";
|
|
2
|
+
import { type FormFieldProps } from "./form-field";
|
|
3
|
+
import { PopoverContent } from "./popover";
|
|
4
|
+
import * as React from "react";
|
|
5
|
+
type TimePickerProps = Omit<FormFieldProps, "children" | "value" | "defaultValue" | "onValueChange" | "onFocus" | "onBlur" | "placeholder"> & {
|
|
6
|
+
value?: TimeWheelPickerValue;
|
|
7
|
+
defaultValue?: TimeWheelPickerValue;
|
|
8
|
+
onValueChange?: (value: TimeWheelPickerValue | undefined) => void;
|
|
9
|
+
placeholder?: string;
|
|
10
|
+
format?: TimeWheelPickerFormat;
|
|
11
|
+
minuteStep?: number;
|
|
12
|
+
formatTime?: (value: TimeWheelPickerValue | undefined) => string;
|
|
13
|
+
timeWheelPickerProps?: Omit<WheelPickerProps, "value" | "defaultValue" | "onValueChange" | "format" | "minuteStep">;
|
|
14
|
+
popoverContentProps?: React.ComponentPropsWithoutRef<typeof PopoverContent>;
|
|
15
|
+
iconClassName?: string;
|
|
16
|
+
onOpenChange?: (open: boolean) => void;
|
|
17
|
+
onFieldFocus?: FormFieldProps["onFocus"];
|
|
18
|
+
onFieldBlur?: FormFieldProps["onBlur"];
|
|
19
|
+
};
|
|
20
|
+
declare function TimePicker({ value, defaultValue, onValueChange, placeholder, format, minuteStep, formatTime, timeWheelPickerProps, popoverContentProps, iconClassName, onOpenChange, onFieldFocus, onFieldBlur, className, fieldClassName, ...formFieldProps }: TimePickerProps): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
declare namespace TimePicker {
|
|
22
|
+
var displayName: string;
|
|
23
|
+
}
|
|
24
|
+
export { TimePicker };
|
|
25
|
+
export type { TimePickerProps };
|
|
26
|
+
//# sourceMappingURL=timepicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timepicker.d.ts","sourceRoot":"","sources":["../../../../$/components/ui/timepicker.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEN,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,IAAI,gBAAgB,EAC7C,KAAK,oBAAoB,EACzB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9D,OAAO,EAAW,cAAc,EAAE,MAAM,WAAW,CAAC;AAGpD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,KAAK,eAAe,GAAG,IAAI,CAC1B,cAAc,EACZ,UAAU,GACV,OAAO,GACP,cAAc,GACd,eAAe,GACf,SAAS,GACT,QAAQ,GACR,aAAa,CACf,GAAG;IACH,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,GAAG,SAAS,KAAK,IAAI,CAAC;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,GAAG,SAAS,KAAK,MAAM,CAAC;IACjE,oBAAoB,CAAC,EAAE,IAAI,CAC1B,gBAAgB,EAChB,OAAO,GAAG,cAAc,GAAG,eAAe,GAAG,QAAQ,GAAG,YAAY,CACpE,CAAC;IACF,mBAAmB,CAAC,EAAE,KAAK,CAAC,wBAAwB,CAAC,OAAO,cAAc,CAAC,CAAC;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACzC,WAAW,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;CACvC,CAAC;AAsBF,iBAAS,UAAU,CAAC,EACnB,KAAK,EACL,YAAY,EACZ,aAAa,EACb,WAA6B,EAC7B,MAAc,EACd,UAAU,EACV,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,SAAS,EACT,cAAc,EACd,GAAG,cAAc,EACjB,EAAE,eAAe,2CAsHjB;kBAvIQ,UAAU;;;AA2InB,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,YAAY,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
24
|
+
import { cn } from "../../../$/lib/utils";
|
|
25
|
+
import { useControllableState } from "../primitives/calendar/use-controllable-state";
|
|
26
|
+
import { TimeWheelPicker, } from "./timewheelpicker";
|
|
27
|
+
import { FormField } from "./form-field";
|
|
28
|
+
import { Icon } from "./icon";
|
|
29
|
+
import { Text } from "./text";
|
|
30
|
+
import { Popover } from "./popover";
|
|
31
|
+
import { Clock3 } from "lucide-react-native";
|
|
32
|
+
import * as React from "react";
|
|
33
|
+
import { Pressable, useWindowDimensions, View } from "react-native";
|
|
34
|
+
var pad2 = function (value) {
|
|
35
|
+
return String(Math.max(0, Math.trunc(value))).padStart(2, "0");
|
|
36
|
+
};
|
|
37
|
+
var buildDefaultFormatter = function (format) {
|
|
38
|
+
if (format === void 0) { format = "24h"; }
|
|
39
|
+
return function (time) {
|
|
40
|
+
if (!time)
|
|
41
|
+
return "";
|
|
42
|
+
var hour = Math.max(0, Math.min(23, Math.trunc(time.hour)));
|
|
43
|
+
var minute = Math.max(0, Math.min(59, Math.trunc(time.minute)));
|
|
44
|
+
if (format === "24h") {
|
|
45
|
+
return "".concat(pad2(hour), ":").concat(pad2(minute));
|
|
46
|
+
}
|
|
47
|
+
var meridiem = hour >= 12 ? "PM" : "AM";
|
|
48
|
+
var rawHour = hour % 12;
|
|
49
|
+
var hour12 = rawHour === 0 ? 12 : rawHour;
|
|
50
|
+
return "".concat(hour12, ":").concat(pad2(minute), " ").concat(meridiem);
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
function TimePicker(_a) {
|
|
54
|
+
var value = _a.value, defaultValue = _a.defaultValue, onValueChange = _a.onValueChange, _b = _a.placeholder, placeholder = _b === void 0 ? "Select a time" : _b, _c = _a.format, format = _c === void 0 ? "24h" : _c, minuteStep = _a.minuteStep, formatTime = _a.formatTime, timeWheelPickerProps = _a.timeWheelPickerProps, popoverContentProps = _a.popoverContentProps, iconClassName = _a.iconClassName, onOpenChange = _a.onOpenChange, onFieldFocus = _a.onFieldFocus, onFieldBlur = _a.onFieldBlur, className = _a.className, fieldClassName = _a.fieldClassName, formFieldProps = __rest(_a, ["value", "defaultValue", "onValueChange", "placeholder", "format", "minuteStep", "formatTime", "timeWheelPickerProps", "popoverContentProps", "iconClassName", "onOpenChange", "onFieldFocus", "onFieldBlur", "className", "fieldClassName"]);
|
|
55
|
+
var _d = useControllableState({
|
|
56
|
+
value: value,
|
|
57
|
+
defaultValue: defaultValue,
|
|
58
|
+
onChange: onValueChange,
|
|
59
|
+
}), selectedTime = _d[0], setSelectedTime = _d[1];
|
|
60
|
+
var popoverRef = React.useRef(null);
|
|
61
|
+
var formatter = React.useMemo(function () { return formatTime !== null && formatTime !== void 0 ? formatTime : buildDefaultFormatter(format); }, [format, formatTime]);
|
|
62
|
+
var displayValue = React.useMemo(function () { return formatter(selectedTime); }, [formatter, selectedTime]);
|
|
63
|
+
var dimensions = useWindowDimensions();
|
|
64
|
+
var isSmallerScreen = dimensions.width < 640;
|
|
65
|
+
return (_jsx(FormField, __assign({}, formFieldProps, { className: className, fieldClassName: cn("h-16", fieldClassName), value: displayValue, placeholder: placeholder, onFocus: onFieldFocus, onBlur: onFieldBlur, children: function (_a) {
|
|
66
|
+
var _b;
|
|
67
|
+
var inputProps = _a.inputProps, isFocused = _a.isFocused, hasError = _a.hasError, hasSuccess = _a.hasSuccess;
|
|
68
|
+
var handleOpenChange = function (nextOpen) {
|
|
69
|
+
if (formFieldProps.disabled)
|
|
70
|
+
return;
|
|
71
|
+
if (nextOpen) {
|
|
72
|
+
inputProps.onFocus();
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
inputProps.onBlur();
|
|
76
|
+
}
|
|
77
|
+
onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(nextOpen);
|
|
78
|
+
};
|
|
79
|
+
var handleTimeChange = function (next) {
|
|
80
|
+
setSelectedTime(next);
|
|
81
|
+
};
|
|
82
|
+
var textToShow = displayValue || placeholder;
|
|
83
|
+
var resolvedPopoverContentClassName = cn("border-none bg-transparent p-0 shadow-none", popoverContentProps === null || popoverContentProps === void 0 ? void 0 : popoverContentProps.className);
|
|
84
|
+
return (_jsxs(_Fragment, { children: [_jsx(Popover, { onOpenChange: handleOpenChange, content: _jsx(TimeWheelPicker, __assign({ value: selectedTime, onValueChange: handleTimeChange, format: format, minuteStep: minuteStep }, timeWheelPickerProps, { className: cn("bg-card border border-border rounded-xl p-4", timeWheelPickerProps === null || timeWheelPickerProps === void 0 ? void 0 : timeWheelPickerProps.className), overlayBgColorClassName: "bg-card/70" })), contentProps: __assign(__assign({}, popoverContentProps), { className: resolvedPopoverContentClassName, sideOffset: (_b = popoverContentProps === null || popoverContentProps === void 0 ? void 0 : popoverContentProps.sideOffset) !== null && _b !== void 0 ? _b : 8 }), triggerRef: popoverRef, type: isSmallerScreen ? "floating-sheet" : "popover" }), _jsxs(Pressable, { className: "flex-row items-center justify-between gap-2 py-1.5", disabled: formFieldProps.disabled, accessibilityState: {
|
|
85
|
+
disabled: formFieldProps.disabled,
|
|
86
|
+
}, onPress: function () { var _a; return (_a = popoverRef.current) === null || _a === void 0 ? void 0 : _a.open(); }, children: [_jsx(View, { className: "flex-1", children: _jsx(Text, { className: cn("text-base", displayValue ? "text-foreground" : "text-muted-foreground"), numberOfLines: 1, ellipsizeMode: "tail", children: textToShow }) }), _jsx(Icon, { as: Clock3, className: cn("size-5 text-muted-foreground", isFocused && !hasError && !hasSuccess && "text-foreground", hasError && "text-destructive", hasSuccess && "text-primary", iconClassName) })] })] }));
|
|
87
|
+
} })));
|
|
88
|
+
}
|
|
89
|
+
TimePicker.displayName = "TimePicker";
|
|
90
|
+
export { TimePicker };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
type TimeWheelPickerFormat = "12h" | "24h";
|
|
2
|
+
type TimeWheelPickerValue = {
|
|
3
|
+
hour: number;
|
|
4
|
+
minute: number;
|
|
5
|
+
};
|
|
6
|
+
type TimeWheelPickerProps = {
|
|
7
|
+
value?: TimeWheelPickerValue;
|
|
8
|
+
defaultValue?: TimeWheelPickerValue;
|
|
9
|
+
onValueChange?: (value: TimeWheelPickerValue) => void;
|
|
10
|
+
format?: TimeWheelPickerFormat;
|
|
11
|
+
minuteStep?: number;
|
|
12
|
+
itemHeight?: number;
|
|
13
|
+
visibleItems?: number;
|
|
14
|
+
hapticFeedback?: boolean;
|
|
15
|
+
className?: string;
|
|
16
|
+
columnClassName?: string;
|
|
17
|
+
overlayBgColorClassName?: string;
|
|
18
|
+
};
|
|
19
|
+
declare function TimeWheelPicker({ value, defaultValue, onValueChange, format, minuteStep, itemHeight, visibleItems, hapticFeedback, className, columnClassName, overlayBgColorClassName, }: TimeWheelPickerProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export { TimeWheelPicker };
|
|
21
|
+
export type { TimeWheelPickerFormat, TimeWheelPickerProps, TimeWheelPickerValue, };
|
|
22
|
+
//# sourceMappingURL=timewheelpicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timewheelpicker.d.ts","sourceRoot":"","sources":["../../../../$/components/ui/timewheelpicker.tsx"],"names":[],"mappings":"AAOA,KAAK,qBAAqB,GAAG,KAAK,GAAG,KAAK,CAAC;AAG3C,KAAK,oBAAoB,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC3B,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACtD,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;CACjC,CAAC;AA0EF,iBAAS,eAAe,CAAC,EACxB,KAAK,EACL,YAAY,EACZ,aAAa,EACb,MAAc,EACd,UAAc,EACd,UAAU,EACV,YAAY,EACZ,cAAc,EACd,SAAS,EACT,eAAe,EACf,uBAAuB,GACvB,EAAE,oBAAoB,2CAiHtB;AAED,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,YAAY,EACX,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,GACpB,CAAC"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { View } from "react-native";
|
|
4
|
+
import { WheelPicker } from "../primitives/wheelpicker";
|
|
5
|
+
import { Text } from "./text";
|
|
6
|
+
import { cn } from "../../../$/lib/utils";
|
|
7
|
+
function clampHour(hour) {
|
|
8
|
+
return Math.max(0, Math.min(23, Math.trunc(hour)));
|
|
9
|
+
}
|
|
10
|
+
function clampMinute(minute) {
|
|
11
|
+
return Math.max(0, Math.min(59, Math.trunc(minute)));
|
|
12
|
+
}
|
|
13
|
+
function normalizeMinute(minute, step) {
|
|
14
|
+
var rounded = Math.round(clampMinute(minute) / step) * step;
|
|
15
|
+
return Math.min(59, rounded);
|
|
16
|
+
}
|
|
17
|
+
function normalizeTimeValue(value, minuteStep) {
|
|
18
|
+
if (!value)
|
|
19
|
+
return { hour: 0, minute: 0 };
|
|
20
|
+
return {
|
|
21
|
+
hour: clampHour(value.hour),
|
|
22
|
+
minute: normalizeMinute(value.minute, minuteStep),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
function to12Hour(hour24) {
|
|
26
|
+
var safeHour = clampHour(hour24);
|
|
27
|
+
var meridiem = safeHour >= 12 ? "PM" : "AM";
|
|
28
|
+
var raw = safeHour % 12;
|
|
29
|
+
var hour12 = raw === 0 ? 12 : raw;
|
|
30
|
+
return { hour12: hour12, meridiem: meridiem };
|
|
31
|
+
}
|
|
32
|
+
function to24Hour(hour12, meridiem) {
|
|
33
|
+
var safe = Math.max(1, Math.min(12, Math.trunc(hour12)));
|
|
34
|
+
if (meridiem === "AM")
|
|
35
|
+
return safe === 12 ? 0 : safe;
|
|
36
|
+
return safe === 12 ? 12 : safe + 12;
|
|
37
|
+
}
|
|
38
|
+
function pad2(n) {
|
|
39
|
+
return String(n).padStart(2, "0");
|
|
40
|
+
}
|
|
41
|
+
function buildHourItems(format) {
|
|
42
|
+
if (format === "24h") {
|
|
43
|
+
return Array.from({ length: 24 }, function (_, hour) { return ({
|
|
44
|
+
label: pad2(hour),
|
|
45
|
+
value: hour,
|
|
46
|
+
}); });
|
|
47
|
+
}
|
|
48
|
+
return Array.from({ length: 12 }, function (_, i) {
|
|
49
|
+
var hour12 = i + 1;
|
|
50
|
+
return { label: String(hour12), value: hour12 };
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
function buildMinuteItems(step) {
|
|
54
|
+
var _a;
|
|
55
|
+
var items = [];
|
|
56
|
+
for (var minute = 0; minute < 60; minute += step) {
|
|
57
|
+
items.push({ label: pad2(minute), value: minute });
|
|
58
|
+
}
|
|
59
|
+
// Ensure 59 is reachable when step doesn't divide 59 evenly.
|
|
60
|
+
if (((_a = items[items.length - 1]) === null || _a === void 0 ? void 0 : _a.value) !== 59) {
|
|
61
|
+
items.push({ label: pad2(59), value: 59 });
|
|
62
|
+
}
|
|
63
|
+
return items;
|
|
64
|
+
}
|
|
65
|
+
var meridiemItems = [
|
|
66
|
+
{ label: "AM", value: "AM" },
|
|
67
|
+
{ label: "PM", value: "PM" },
|
|
68
|
+
];
|
|
69
|
+
function TimeWheelPicker(_a) {
|
|
70
|
+
var value = _a.value, defaultValue = _a.defaultValue, onValueChange = _a.onValueChange, _b = _a.format, format = _b === void 0 ? "24h" : _b, _c = _a.minuteStep, minuteStep = _c === void 0 ? 1 : _c, itemHeight = _a.itemHeight, visibleItems = _a.visibleItems, hapticFeedback = _a.hapticFeedback, className = _a.className, columnClassName = _a.columnClassName, overlayBgColorClassName = _a.overlayBgColorClassName;
|
|
71
|
+
var safeMinuteStep = React.useMemo(function () { return Math.max(1, Math.min(59, Math.trunc(minuteStep))); }, [minuteStep]);
|
|
72
|
+
var isControlled = value !== undefined;
|
|
73
|
+
var _d = React.useState(function () {
|
|
74
|
+
return normalizeTimeValue(defaultValue !== null && defaultValue !== void 0 ? defaultValue : value, safeMinuteStep);
|
|
75
|
+
}), internalValue = _d[0], setInternalValue = _d[1];
|
|
76
|
+
var current = React.useMemo(function () {
|
|
77
|
+
return normalizeTimeValue(isControlled ? value : internalValue, safeMinuteStep);
|
|
78
|
+
}, [internalValue, isControlled, safeMinuteStep, value]);
|
|
79
|
+
React.useEffect(function () {
|
|
80
|
+
if (!isControlled && defaultValue !== undefined) {
|
|
81
|
+
setInternalValue(normalizeTimeValue(defaultValue, safeMinuteStep));
|
|
82
|
+
}
|
|
83
|
+
}, [defaultValue, isControlled, safeMinuteStep]);
|
|
84
|
+
var hourItems = React.useMemo(function () { return buildHourItems(format); }, [format]);
|
|
85
|
+
var minuteItems = React.useMemo(function () { return buildMinuteItems(safeMinuteStep); }, [safeMinuteStep]);
|
|
86
|
+
var _e = React.useMemo(function () { return to12Hour(current.hour); }, [current.hour]), hour12 = _e.hour12, meridiem = _e.meridiem;
|
|
87
|
+
var emitChange = React.useCallback(function (next) {
|
|
88
|
+
var normalized = normalizeTimeValue(next, safeMinuteStep);
|
|
89
|
+
if (!isControlled)
|
|
90
|
+
setInternalValue(normalized);
|
|
91
|
+
onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(normalized);
|
|
92
|
+
}, [isControlled, onValueChange, safeMinuteStep]);
|
|
93
|
+
var handleHourChange = React.useCallback(function (nextHour) {
|
|
94
|
+
if (format === "24h") {
|
|
95
|
+
emitChange({ hour: nextHour, minute: current.minute });
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
var nextHour24 = to24Hour(nextHour, meridiem);
|
|
99
|
+
emitChange({ hour: nextHour24, minute: current.minute });
|
|
100
|
+
}, [current.minute, emitChange, format, meridiem]);
|
|
101
|
+
var handleMinuteChange = React.useCallback(function (nextMinute) {
|
|
102
|
+
emitChange({ hour: current.hour, minute: nextMinute });
|
|
103
|
+
}, [current.hour, emitChange]);
|
|
104
|
+
var handleMeridiemChange = React.useCallback(function (next) {
|
|
105
|
+
if (format !== "12h")
|
|
106
|
+
return;
|
|
107
|
+
var nextHour24 = to24Hour(hour12, next);
|
|
108
|
+
emitChange({ hour: nextHour24, minute: current.minute });
|
|
109
|
+
}, [current.minute, emitChange, format, hour12]);
|
|
110
|
+
return (_jsxs(View, { className: cn("flex-row w-full items-center gap-3", className), children: [_jsx(WheelPicker, { items: hourItems, value: format === "24h" ? current.hour : hour12, onValueChange: handleHourChange, itemHeight: itemHeight, visibleItems: visibleItems, hapticFeedback: hapticFeedback, className: cn("flex-1", columnClassName), overlayBgColorClassName: overlayBgColorClassName }), _jsx(Text, { className: "text-foreground/60", "aria-hidden": true, children: ":" }), _jsx(WheelPicker, { items: minuteItems, value: current.minute, onValueChange: handleMinuteChange, itemHeight: itemHeight, visibleItems: visibleItems, hapticFeedback: hapticFeedback, className: cn("flex-1", columnClassName), overlayBgColorClassName: overlayBgColorClassName }), format === "12h" ? (_jsx(WheelPicker, { items: meridiemItems, value: meridiem, onValueChange: handleMeridiemChange, itemHeight: itemHeight, visibleItems: visibleItems, hapticFeedback: hapticFeedback, className: cn("flex-1", columnClassName), overlayBgColorClassName: overlayBgColorClassName })) : null] }));
|
|
111
|
+
}
|
|
112
|
+
export { TimeWheelPicker };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { ToggleGroup as PrimitiveToggleGroup, ToggleGroupIcon, ToggleGroupItem as PrimitiveToggleGroupItem } from "../primitives/toggle-group";
|
|
3
|
+
type ToggleGroupItemData = {
|
|
4
|
+
value?: string;
|
|
5
|
+
label: React.ReactNode;
|
|
6
|
+
itemProps?: React.ComponentProps<typeof PrimitiveToggleGroupItem>;
|
|
7
|
+
};
|
|
8
|
+
type ToggleGroupProps = React.ComponentProps<typeof PrimitiveToggleGroup> & {
|
|
9
|
+
items?: ToggleGroupItemData[];
|
|
10
|
+
};
|
|
11
|
+
declare function ToggleGroup({ items, children, ...props }: ToggleGroupProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export { ToggleGroup, ToggleGroupIcon, PrimitiveToggleGroupItem as ToggleGroupItem, };
|
|
13
|
+
export * from "../primitives/toggle-group";
|
|
14
|
+
//# sourceMappingURL=toggle-group.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggle-group.d.ts","sourceRoot":"","sources":["../../../../$/components/ui/toggle-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EACN,WAAW,IAAI,oBAAoB,EACnC,eAAe,EACf,eAAe,IAAI,wBAAwB,EAC3C,MAAM,4BAA4B,CAAC;AAGpC,KAAK,mBAAmB,GAAG;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,wBAAwB,CAAC,CAAC;CAClE,CAAC;AAEF,KAAK,gBAAgB,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,GAAG;IAC3E,KAAK,CAAC,EAAE,mBAAmB,EAAE,CAAC;CAC9B,CAAC;AASF,iBAAS,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,2CAuBnE;AAED,OAAO,EACN,WAAW,EACX,eAAe,EACf,wBAAwB,IAAI,eAAe,GAC3C,CAAC;AACF,cAAc,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
|
+
import { ToggleGroup as PrimitiveToggleGroup, ToggleGroupIcon, ToggleGroupItem as PrimitiveToggleGroupItem, } from "../primitives/toggle-group";
|
|
25
|
+
import { Text } from "./text";
|
|
26
|
+
var renderLabel = function (label) {
|
|
27
|
+
if (typeof label === "string" || typeof label === "number") {
|
|
28
|
+
return _jsx(Text, { children: label });
|
|
29
|
+
}
|
|
30
|
+
return label;
|
|
31
|
+
};
|
|
32
|
+
function ToggleGroup(_a) {
|
|
33
|
+
var items = _a.items, children = _a.children, props = __rest(_a, ["items", "children"]);
|
|
34
|
+
if (!items || items.length === 0) {
|
|
35
|
+
return _jsx(PrimitiveToggleGroup, __assign({}, props, { children: children }));
|
|
36
|
+
}
|
|
37
|
+
return (_jsx(PrimitiveToggleGroup, __assign({}, props, { children: items.map(function (item, index) {
|
|
38
|
+
var _a;
|
|
39
|
+
var value = (_a = item.value) !== null && _a !== void 0 ? _a : String(index);
|
|
40
|
+
return (_jsx(PrimitiveToggleGroupItem, __assign({ value: value, isFirst: index === 0, isLast: index === items.length - 1 }, item.itemProps, { children: renderLabel(item.label) }), value));
|
|
41
|
+
}) })));
|
|
42
|
+
}
|
|
43
|
+
export { ToggleGroup, ToggleGroupIcon, PrimitiveToggleGroupItem as ToggleGroupItem, };
|
|
44
|
+
export * from "../primitives/toggle-group";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../../$/components/ui/toggle.tsx"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../primitives/toggle";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Tooltip as PrimitiveTooltip, TooltipContent, TooltipTrigger } from "../primitives/tooltip";
|
|
3
|
+
type TooltipProps = React.ComponentProps<typeof PrimitiveTooltip> & {
|
|
4
|
+
trigger?: React.ReactNode;
|
|
5
|
+
content?: React.ReactNode;
|
|
6
|
+
triggerProps?: React.ComponentProps<typeof TooltipTrigger>;
|
|
7
|
+
contentProps?: React.ComponentProps<typeof TooltipContent>;
|
|
8
|
+
};
|
|
9
|
+
declare function Tooltip({ trigger, content, triggerProps, contentProps, children, ...props }: TooltipProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export { Tooltip, TooltipContent, TooltipTrigger };
|
|
11
|
+
export * from "../primitives/tooltip";
|
|
12
|
+
//# sourceMappingURL=tooltip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../$/components/ui/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACN,OAAO,IAAI,gBAAgB,EAC3B,cAAc,EACd,cAAc,EACd,MAAM,uBAAuB,CAAC;AAE/B,KAAK,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,GAAG;IACnE,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,CAAC;IAC3D,YAAY,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,CAAC;CAC3D,CAAC;AAEF,iBAAS,OAAO,CAAC,EAChB,OAAO,EACP,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,GAAG,KAAK,EACR,EAAE,YAAY,2CAsBd;AAED,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AACnD,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
24
|
+
import { Tooltip as PrimitiveTooltip, TooltipContent, TooltipTrigger, } from "../primitives/tooltip";
|
|
25
|
+
function Tooltip(_a) {
|
|
26
|
+
var trigger = _a.trigger, content = _a.content, triggerProps = _a.triggerProps, contentProps = _a.contentProps, children = _a.children, props = __rest(_a, ["trigger", "content", "triggerProps", "contentProps", "children"]);
|
|
27
|
+
if (children) {
|
|
28
|
+
return (_jsxs(PrimitiveTooltip, __assign({}, props, { children: [trigger && (_jsx(TooltipTrigger, __assign({ asChild: true }, triggerProps, { children: trigger }))), children] })));
|
|
29
|
+
}
|
|
30
|
+
return (_jsxs(PrimitiveTooltip, __assign({}, props, { children: [_jsx(TooltipTrigger, __assign({ asChild: true }, triggerProps, { children: trigger })), _jsx(TooltipContent, __assign({}, contentProps, { children: content }))] })));
|
|
31
|
+
}
|
|
32
|
+
export { Tooltip, TooltipContent, TooltipTrigger };
|
|
33
|
+
export * from "../primitives/tooltip";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../$/components/ui/view.tsx"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../primitives/view";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wheelpicker.d.ts","sourceRoot":"","sources":["../../../../$/components/ui/wheelpicker.tsx"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../primitives/wheelpicker";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useExtractTextClasses.d.ts","sourceRoot":"","sources":["../../../../$/lib/hooks/useExtractTextClasses.ts"],"names":[],"mappings":"AAiDA,eAAO,MAAM,qBAAqB,GAAI,YAAY,MAAM,WAMvD,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { useMemo } from "react";
|
|
2
|
+
var textClassPrefixSet = [
|
|
3
|
+
"text-",
|
|
4
|
+
"font-",
|
|
5
|
+
"leading-",
|
|
6
|
+
"transition-colors",
|
|
7
|
+
"whitespace-",
|
|
8
|
+
"text-opacity-",
|
|
9
|
+
"font-",
|
|
10
|
+
"tracking-",
|
|
11
|
+
"line-clamp-",
|
|
12
|
+
"text-overflow-",
|
|
13
|
+
"text-decoration-",
|
|
14
|
+
"text-transform-",
|
|
15
|
+
"text-align-",
|
|
16
|
+
"text-justify-",
|
|
17
|
+
"text-indent-",
|
|
18
|
+
"underline",
|
|
19
|
+
"line-through",
|
|
20
|
+
"no-underline",
|
|
21
|
+
"uppercase",
|
|
22
|
+
"lowercase",
|
|
23
|
+
"capitalize",
|
|
24
|
+
"normal-case",
|
|
25
|
+
"truncate",
|
|
26
|
+
"overflow-ellipsis",
|
|
27
|
+
"overflow-clip",
|
|
28
|
+
"overflow-visible",
|
|
29
|
+
"overflow-hidden",
|
|
30
|
+
"overflow-scroll",
|
|
31
|
+
"overflow-auto",
|
|
32
|
+
"antialiased",
|
|
33
|
+
"subpixel-antialiased",
|
|
34
|
+
"italic",
|
|
35
|
+
"not-italic",
|
|
36
|
+
"italic",
|
|
37
|
+
"normal-nums",
|
|
38
|
+
"ordinal",
|
|
39
|
+
"slashed-zero",
|
|
40
|
+
"lining-nums",
|
|
41
|
+
"oldstyle-nums",
|
|
42
|
+
"proportional-nums",
|
|
43
|
+
"tabular-nums",
|
|
44
|
+
"diagonal-fractions",
|
|
45
|
+
"stacked-fractions",
|
|
46
|
+
"normal-nums",
|
|
47
|
+
];
|
|
48
|
+
export var useExtractTextClasses = function (className) {
|
|
49
|
+
var textClasses = useMemo(function () { return extractTextClasses(className); }, [className]).textClasses;
|
|
50
|
+
return textClasses;
|
|
51
|
+
};
|
|
52
|
+
var extractTextClasses = function (className) {
|
|
53
|
+
if (!className)
|
|
54
|
+
return { textClasses: "", classes: "" };
|
|
55
|
+
var classes = className.split(" ");
|
|
56
|
+
var textClasses = classes
|
|
57
|
+
.filter(function (c) {
|
|
58
|
+
return textClassPrefixSet.some(function (nc) { return c.startsWith(nc) || c.includes(nc); });
|
|
59
|
+
})
|
|
60
|
+
.join(" ");
|
|
61
|
+
return { textClasses: textClasses, classes: classes };
|
|
62
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderNode.d.ts","sourceRoot":"","sources":["../../../../$/lib/utils/renderNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,wBAAgB,UAAU,CACzB,IAAI,EAAE,KAAK,CAAC,SAAS,EACrB,SAAS,CAAC,EAAE,MAAM,GAChB,KAAK,CAAC,SAAS,CAkBjB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { Text } from "../../../$/components/primitives/text";
|
|
4
|
+
import { cn } from "../utils";
|
|
5
|
+
// Renders primitive values (string/number) as Text while passing through React elements.
|
|
6
|
+
// Optional className applied only when we wrap primitives.
|
|
7
|
+
export function renderNode(node, className) {
|
|
8
|
+
var _a;
|
|
9
|
+
if (node == null || typeof node === "boolean")
|
|
10
|
+
return null;
|
|
11
|
+
if (typeof node === "string" || typeof node === "number") {
|
|
12
|
+
return _jsx(Text, { className: cn(className), children: node });
|
|
13
|
+
}
|
|
14
|
+
// check if fragment
|
|
15
|
+
if (React.isValidElement(node) && node.type === React.Fragment) {
|
|
16
|
+
return React.Children.map((_a = node.props) === null || _a === void 0 ? void 0 : _a.children, function (child, i) { return (_jsx(React.Fragment, { children: renderNode(child, className) }, i)); });
|
|
17
|
+
}
|
|
18
|
+
if (Array.isArray(node)) {
|
|
19
|
+
return node.map(function (n, i) { return (_jsx(React.Fragment, { children: renderNode(n, className) }, i)); });
|
|
20
|
+
}
|
|
21
|
+
return node;
|
|
22
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type ClassValue } from "clsx";
|
|
2
|
+
import { cva, type VariantProps } from "class-variance-authority";
|
|
3
|
+
export declare function mergeClasses(...inputs: ClassValue[]): string;
|
|
4
|
+
export { mergeClasses as cn, cva, type VariantProps };
|
|
5
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../$/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAE7C,OAAO,EAAE,GAAG,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAyBlE,wBAAgB,YAAY,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEnD;AAED,OAAO,EAAE,YAAY,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,YAAY,EAAE,CAAC"}
|