@codefast/ui 0.3.15 → 0.3.16-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/components/accordion.d.mts +30 -0
- package/dist/components/accordion.mjs +15 -0
- package/dist/components/alert-dialog.d.mts +60 -0
- package/dist/components/alert-dialog.mjs +30 -0
- package/dist/components/alert.d.mts +21 -0
- package/dist/components/alert.mjs +12 -0
- package/dist/components/aspect-ratio.d.mts +6 -0
- package/dist/components/aspect-ratio.mjs +3 -0
- package/dist/components/avatar.d.mts +18 -0
- package/dist/components/avatar.mjs +9 -0
- package/dist/components/badge.d.mts +9 -0
- package/dist/components/badge.mjs +6 -0
- package/dist/components/breadcrumb.d.mts +42 -0
- package/dist/components/breadcrumb.mjs +21 -0
- package/dist/components/button-group.d.mts +21 -0
- package/dist/components/button-group.mjs +12 -0
- package/dist/components/button.d.mts +9 -0
- package/dist/components/button.mjs +6 -0
- package/dist/components/calendar.d.mts +12 -0
- package/dist/components/calendar.mjs +6 -0
- package/dist/components/card.d.mts +42 -0
- package/dist/components/card.mjs +21 -0
- package/dist/components/carousel.d.mts +33 -0
- package/dist/components/carousel.mjs +15 -0
- package/dist/components/chart.d.mts +39 -0
- package/dist/components/chart.mjs +18 -0
- package/dist/components/checkbox-cards.d.mts +12 -0
- package/dist/components/checkbox-cards.mjs +6 -0
- package/dist/components/checkbox-group.d.mts +12 -0
- package/dist/components/checkbox-group.mjs +6 -0
- package/dist/components/checkbox.d.mts +6 -0
- package/dist/components/checkbox.mjs +3 -0
- package/dist/components/collapsible.d.mts +18 -0
- package/dist/components/collapsible.mjs +9 -0
- package/dist/components/command.d.mts +60 -0
- package/dist/components/command.mjs +30 -0
- package/dist/components/context-menu.d.mts +90 -0
- package/dist/components/context-menu.mjs +45 -0
- package/dist/components/dialog.d.mts +54 -0
- package/dist/components/dialog.mjs +27 -0
- package/dist/components/drawer.d.mts +54 -0
- package/dist/components/drawer.mjs +27 -0
- package/dist/components/dropdown-menu.d.mts +90 -0
- package/dist/components/dropdown-menu.mjs +45 -0
- package/dist/components/empty.d.mts +39 -0
- package/dist/components/empty.mjs +21 -0
- package/dist/components/field.d.mts +63 -0
- package/dist/components/field.mjs +33 -0
- package/dist/components/form.d.mts +42 -0
- package/dist/components/form.mjs +21 -0
- package/dist/components/hover-card.d.mts +24 -0
- package/dist/components/hover-card.mjs +12 -0
- package/dist/components/input-group.d.mts +45 -0
- package/dist/components/input-group.mjs +27 -0
- package/dist/components/input-number.d.mts +6 -0
- package/dist/components/input-number.mjs +3 -0
- package/dist/components/input-otp.d.mts +24 -0
- package/dist/components/input-otp.mjs +12 -0
- package/dist/components/input-password.d.mts +6 -0
- package/dist/components/input-password.mjs +3 -0
- package/dist/components/input-search.d.mts +6 -0
- package/dist/components/input-search.mjs +3 -0
- package/dist/components/input.d.mts +6 -0
- package/dist/components/input.mjs +3 -0
- package/dist/components/item.d.mts +66 -0
- package/dist/components/item.mjs +36 -0
- package/dist/components/kbd.d.mts +12 -0
- package/dist/components/kbd.mjs +6 -0
- package/dist/components/label.d.mts +6 -0
- package/dist/components/label.mjs +3 -0
- package/dist/components/menubar.d.mts +96 -0
- package/dist/components/menubar.mjs +48 -0
- package/dist/components/native-select.d.mts +18 -0
- package/dist/components/native-select.mjs +9 -0
- package/dist/components/navigation-menu.d.mts +39 -0
- package/dist/components/navigation-menu.mjs +21 -0
- package/dist/components/pagination.d.mts +42 -0
- package/dist/components/pagination.mjs +21 -0
- package/dist/components/popover.d.mts +30 -0
- package/dist/components/popover.mjs +15 -0
- package/dist/components/progress-circle.d.mts +9 -0
- package/dist/components/progress-circle.mjs +6 -0
- package/dist/components/progress.d.mts +6 -0
- package/dist/components/progress.mjs +3 -0
- package/dist/components/radio-cards.d.mts +12 -0
- package/dist/components/radio-cards.mjs +6 -0
- package/dist/components/radio-group.d.mts +12 -0
- package/dist/components/radio-group.mjs +6 -0
- package/dist/components/radio.d.mts +6 -0
- package/dist/components/radio.mjs +3 -0
- package/dist/components/resizable.d.mts +18 -0
- package/dist/components/resizable.mjs +9 -0
- package/dist/components/scroll-area.d.mts +15 -0
- package/dist/components/scroll-area.mjs +9 -0
- package/dist/components/select.d.mts +60 -0
- package/dist/components/select.mjs +30 -0
- package/dist/components/separator.d.mts +15 -0
- package/dist/components/separator.mjs +9 -0
- package/dist/components/sheet.d.mts +57 -0
- package/dist/components/sheet.mjs +30 -0
- package/dist/components/sidebar.d.mts +141 -0
- package/dist/components/sidebar.mjs +72 -0
- package/dist/components/skeleton.d.mts +6 -0
- package/dist/components/skeleton.mjs +3 -0
- package/dist/components/slider.d.mts +6 -0
- package/dist/components/slider.mjs +3 -0
- package/dist/components/sonner.d.mts +6 -0
- package/dist/components/sonner.mjs +3 -0
- package/dist/components/spinner.d.mts +6 -0
- package/dist/components/spinner.mjs +3 -0
- package/dist/components/switch.d.mts +6 -0
- package/dist/components/switch.mjs +3 -0
- package/dist/components/table.d.mts +48 -0
- package/dist/components/table.mjs +24 -0
- package/dist/components/tabs.d.mts +24 -0
- package/dist/components/tabs.mjs +12 -0
- package/dist/components/textarea.d.mts +6 -0
- package/dist/components/textarea.mjs +3 -0
- package/dist/components/toggle-group.d.mts +12 -0
- package/dist/components/toggle-group.mjs +6 -0
- package/dist/components/toggle.d.mts +12 -0
- package/dist/components/toggle.mjs +6 -0
- package/dist/components/tooltip.d.mts +30 -0
- package/dist/components/tooltip.mjs +15 -0
- package/dist/hooks/use-animated-value.d.mts +2 -0
- package/dist/hooks/use-animated-value.mjs +5 -3
- package/dist/hooks/use-copy-to-clipboard.d.mts +2 -0
- package/dist/hooks/use-copy-to-clipboard.mjs +5 -3
- package/dist/hooks/use-is-mobile.d.mts +2 -0
- package/dist/hooks/use-is-mobile.mjs +5 -3
- package/dist/hooks/use-media-query.d.mts +2 -0
- package/dist/hooks/use-media-query.mjs +5 -3
- package/dist/hooks/use-mutation-observer.d.mts +2 -0
- package/dist/hooks/use-mutation-observer.mjs +5 -3
- package/dist/hooks/use-pagination.d.mts +7 -0
- package/dist/hooks/use-pagination.mjs +7 -3
- package/dist/primitives/checkbox-group.d.mts +12 -0
- package/dist/primitives/checkbox-group.mjs +6 -0
- package/dist/primitives/input-number.d.mts +22 -0
- package/dist/primitives/input-number.mjs +12 -0
- package/dist/primitives/input.d.mts +10 -0
- package/dist/primitives/input.mjs +6 -0
- package/dist/primitives/progress-circle.d.mts +30 -0
- package/dist/primitives/progress-circle.mjs +19 -7
- package/package.json +4 -4
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
//#region src/hooks/use-pagination.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* @since 0.3.16-canary.0
|
|
4
|
+
*/
|
|
2
5
|
interface UsePaginationProps {
|
|
3
6
|
/**
|
|
4
7
|
* Current active page number.
|
|
@@ -20,6 +23,8 @@ interface UsePaginationProps {
|
|
|
20
23
|
}
|
|
21
24
|
/**
|
|
22
25
|
* Ellipsis marker used to collapse ranges in pagination output.
|
|
26
|
+
*
|
|
27
|
+
* @since 0.3.16-canary.0
|
|
23
28
|
*/
|
|
24
29
|
declare const ELLIPSIS = "\u2022\u2022\u2022";
|
|
25
30
|
/**
|
|
@@ -41,6 +46,8 @@ declare const ELLIPSIS = "\u2022\u2022\u2022";
|
|
|
41
46
|
* totalResults: 100
|
|
42
47
|
* });
|
|
43
48
|
* ```
|
|
49
|
+
*
|
|
50
|
+
* @since 0.3.16-canary.0
|
|
44
51
|
*/
|
|
45
52
|
declare function usePagination({
|
|
46
53
|
currentPage,
|
|
@@ -3,6 +3,8 @@ import { useMemo } from "react";
|
|
|
3
3
|
//#region src/hooks/use-pagination.ts
|
|
4
4
|
/**
|
|
5
5
|
* Ellipsis marker used to collapse ranges in pagination output.
|
|
6
|
+
*
|
|
7
|
+
* @since 0.3.16-canary.0
|
|
6
8
|
*/
|
|
7
9
|
const ELLIPSIS = "•••";
|
|
8
10
|
/**
|
|
@@ -18,14 +20,14 @@ const createRange = (start, end) => {
|
|
|
18
20
|
};
|
|
19
21
|
/**
|
|
20
22
|
* Compute a pagination structure for result sets.
|
|
21
|
-
*
|
|
23
|
+
*
|
|
22
24
|
* Returns a mixed array of page numbers and the `ELLIPSIS` marker representing
|
|
23
25
|
* collapsed ranges. The shape adapts to the total pages and the requested
|
|
24
26
|
* sibling window around the current page.
|
|
25
|
-
*
|
|
27
|
+
*
|
|
26
28
|
* @param props - Pagination options. See {@link UsePaginationProps}.
|
|
27
29
|
* @returns Array of page numbers and `ELLIPSIS` representing the pagination model.
|
|
28
|
-
*
|
|
30
|
+
*
|
|
29
31
|
* @example
|
|
30
32
|
* ```tsx
|
|
31
33
|
* const paginationRange = usePagination({
|
|
@@ -35,6 +37,8 @@ const createRange = (start, end) => {
|
|
|
35
37
|
* totalResults: 100
|
|
36
38
|
* });
|
|
37
39
|
* ```
|
|
40
|
+
*
|
|
41
|
+
* @since 0.3.16-canary.0
|
|
38
42
|
*/
|
|
39
43
|
function usePagination({ currentPage, resultsPerPage, siblingPagesCount = 1, totalResults }) {
|
|
40
44
|
return useMemo(() => {
|
|
@@ -90,10 +90,14 @@ interface CheckboxGroupBaseProps {
|
|
|
90
90
|
}
|
|
91
91
|
/**
|
|
92
92
|
* Props for the CheckboxGroup component
|
|
93
|
+
*
|
|
94
|
+
* @since 0.3.16-canary.0
|
|
93
95
|
*/
|
|
94
96
|
type CheckboxGroupProps = CheckboxGroupBaseProps & ComponentProps<"div">;
|
|
95
97
|
/**
|
|
96
98
|
* CheckboxGroup component that manages a group of checkboxes with roving focus
|
|
99
|
+
*
|
|
100
|
+
* @since 0.3.16-canary.0
|
|
97
101
|
*/
|
|
98
102
|
declare function CheckboxGroup({
|
|
99
103
|
__scopeCheckboxGroup,
|
|
@@ -110,6 +114,8 @@ declare function CheckboxGroup({
|
|
|
110
114
|
}: ScopedProps<CheckboxGroupProps>): JSX.Element;
|
|
111
115
|
/**
|
|
112
116
|
* Props for the CheckboxGroupItem component
|
|
117
|
+
*
|
|
118
|
+
* @since 0.3.16-canary.0
|
|
113
119
|
*/
|
|
114
120
|
interface CheckboxGroupItemProps extends Omit<ComponentProps<typeof CheckboxPrimitive.Root>, "checked" | "defaultChecked" | "name" | "onCheckedChange"> {
|
|
115
121
|
/**
|
|
@@ -123,6 +129,8 @@ interface CheckboxGroupItemProps extends Omit<ComponentProps<typeof CheckboxPrim
|
|
|
123
129
|
}
|
|
124
130
|
/**
|
|
125
131
|
* Individual checkbox item within a CheckboxGroup
|
|
132
|
+
*
|
|
133
|
+
* @since 0.3.16-canary.0
|
|
126
134
|
*/
|
|
127
135
|
declare function CheckboxGroupItem({
|
|
128
136
|
__scopeCheckboxGroup,
|
|
@@ -131,10 +139,14 @@ declare function CheckboxGroupItem({
|
|
|
131
139
|
}: ScopedProps<CheckboxGroupItemProps>): JSX.Element;
|
|
132
140
|
/**
|
|
133
141
|
* Props for the CheckboxGroupIndicator component
|
|
142
|
+
*
|
|
143
|
+
* @since 0.3.16-canary.0
|
|
134
144
|
*/
|
|
135
145
|
type CheckboxGroupIndicatorProps = ComponentProps<typeof CheckboxPrimitive.Indicator>;
|
|
136
146
|
/**
|
|
137
147
|
* Visual indicator component for a CheckboxGroupItem
|
|
148
|
+
*
|
|
149
|
+
* @since 0.3.16-canary.0
|
|
138
150
|
*/
|
|
139
151
|
declare function CheckboxGroupIndicator({
|
|
140
152
|
__scopeCheckboxGroup,
|
|
@@ -15,6 +15,8 @@ const useCheckboxScope = createCheckboxScope();
|
|
|
15
15
|
const [CheckboxGroupContextProvider, useCheckboxGroupContext] = createCheckboxGroupContext(CHECKBOX_GROUP_NAME);
|
|
16
16
|
/**
|
|
17
17
|
* CheckboxGroup component that manages a group of checkboxes with roving focus
|
|
18
|
+
*
|
|
19
|
+
* @since 0.3.16-canary.0
|
|
18
20
|
*/
|
|
19
21
|
function CheckboxGroup({ __scopeCheckboxGroup, defaultValue, dir, disabled = false, loop = true, name, onValueChange, orientation, required = false, value: valueProperty, ...props }) {
|
|
20
22
|
/**
|
|
@@ -67,6 +69,8 @@ function CheckboxGroup({ __scopeCheckboxGroup, defaultValue, dir, disabled = fal
|
|
|
67
69
|
const ITEM_NAME = "CheckboxGroupItem";
|
|
68
70
|
/**
|
|
69
71
|
* Individual checkbox item within a CheckboxGroup
|
|
72
|
+
*
|
|
73
|
+
* @since 0.3.16-canary.0
|
|
70
74
|
*/
|
|
71
75
|
function CheckboxGroupItem({ __scopeCheckboxGroup, disabled, ...props }) {
|
|
72
76
|
/**
|
|
@@ -111,6 +115,8 @@ function CheckboxGroupItem({ __scopeCheckboxGroup, disabled, ...props }) {
|
|
|
111
115
|
}
|
|
112
116
|
/**
|
|
113
117
|
* Visual indicator component for a CheckboxGroupItem
|
|
118
|
+
*
|
|
119
|
+
* @since 0.3.16-canary.0
|
|
114
120
|
*/
|
|
115
121
|
function CheckboxGroupIndicator({ __scopeCheckboxGroup, ...props }) {
|
|
116
122
|
/**
|
|
@@ -16,6 +16,8 @@ type ScopedProps<P> = P & {
|
|
|
16
16
|
declare const createInputNumberScope: _$_radix_ui_react_context0.CreateScope;
|
|
17
17
|
/**
|
|
18
18
|
* Props for the main InputNumber component.
|
|
19
|
+
*
|
|
20
|
+
* @since 0.3.16-canary.0
|
|
19
21
|
*/
|
|
20
22
|
interface InputNumberProps extends ComponentProps<typeof Input> {
|
|
21
23
|
/**
|
|
@@ -63,11 +65,19 @@ interface InputNumberProps extends ComponentProps<typeof Input> {
|
|
|
63
65
|
*/
|
|
64
66
|
value?: number;
|
|
65
67
|
}
|
|
68
|
+
/**
|
|
69
|
+
* @since 0.3.16-canary.0
|
|
70
|
+
*/
|
|
66
71
|
declare function InputNumber(numberInputProps: ScopedProps<InputNumberProps>): JSX.Element;
|
|
67
72
|
/**
|
|
68
73
|
* Defines the props for the `InputNumberField` component.
|
|
74
|
+
*
|
|
75
|
+
* @since 0.3.16-canary.0
|
|
69
76
|
*/
|
|
70
77
|
type InputNumberFieldProps = Omit<ComponentProps<typeof InputField>, "defaultValue" | "disabled" | "id" | "max" | "min" | "onChange" | "prefix" | "readOnly" | "step" | "value">;
|
|
78
|
+
/**
|
|
79
|
+
* @since 0.3.16-canary.0
|
|
80
|
+
*/
|
|
71
81
|
declare function InputNumberField({
|
|
72
82
|
__scopeInputNumber,
|
|
73
83
|
onBlur,
|
|
@@ -90,9 +100,21 @@ declare function NumberStepperButton({
|
|
|
90
100
|
operation,
|
|
91
101
|
...props
|
|
92
102
|
}: ScopedProps<NumberStepperButtonProps>): JSX.Element;
|
|
103
|
+
/**
|
|
104
|
+
* @since 0.3.16-canary.0
|
|
105
|
+
*/
|
|
93
106
|
type InputNumberIncrementButtonProps = Omit<ComponentProps<typeof NumberStepperButton>, "operation">;
|
|
107
|
+
/**
|
|
108
|
+
* @since 0.3.16-canary.0
|
|
109
|
+
*/
|
|
94
110
|
declare function InputNumberIncrementButton(props: InputNumberIncrementButtonProps): JSX.Element;
|
|
111
|
+
/**
|
|
112
|
+
* @since 0.3.16-canary.0
|
|
113
|
+
*/
|
|
95
114
|
type InputNumberDecrementButtonProps = Omit<ComponentProps<typeof NumberStepperButton>, "operation">;
|
|
115
|
+
/**
|
|
116
|
+
* @since 0.3.16-canary.0
|
|
117
|
+
*/
|
|
96
118
|
declare function InputNumberDecrementButton(props: InputNumberDecrementButtonProps): JSX.Element;
|
|
97
119
|
//#endregion
|
|
98
120
|
export { InputNumberDecrementButton as DecrementButton, InputNumberDecrementButton, InputNumberField as Field, InputNumberField, InputNumberIncrementButton as IncrementButton, InputNumberIncrementButton, InputNumber, InputNumber as Root, type InputNumberDecrementButtonProps, type InputNumberFieldProps, type InputNumberIncrementButtonProps, type InputNumberProps, createInputNumberScope };
|
|
@@ -12,6 +12,9 @@ const NUMBER_INPUT_NAME = "InputNumber";
|
|
|
12
12
|
const [createInputNumberContext, createInputNumberScope] = createContextScope(NUMBER_INPUT_NAME, [createInputScope]);
|
|
13
13
|
const useInputScope = createInputScope();
|
|
14
14
|
const [InputNumberContextProvider, useInputNumberContext] = createInputNumberContext(NUMBER_INPUT_NAME);
|
|
15
|
+
/**
|
|
16
|
+
* @since 0.3.16-canary.0
|
|
17
|
+
*/
|
|
15
18
|
function InputNumber(numberInputProps) {
|
|
16
19
|
const { __scopeInputNumber, ariaDecrementLabel, ariaIncrementLabel, defaultValue, formatOptions = {
|
|
17
20
|
minimumFractionDigits: 0,
|
|
@@ -148,6 +151,9 @@ function InputNumber(numberInputProps) {
|
|
|
148
151
|
* The name of the InputNumberField component constant.
|
|
149
152
|
*/
|
|
150
153
|
const NUMBER_INPUT_FIELD_NAME = "InputNumberField";
|
|
154
|
+
/**
|
|
155
|
+
* @since 0.3.16-canary.0
|
|
156
|
+
*/
|
|
151
157
|
function InputNumberField({ __scopeInputNumber, onBlur, onKeyDown, ...props }) {
|
|
152
158
|
const inputScope = useInputScope(__scopeInputNumber);
|
|
153
159
|
const { defaultValue, disabled, formatValue, id, inputRef, max, min, onChange, onDecrement, onDecrementToMin, onIncrement, onIncrementToMax, parseValue, readOnly, step, value } = useInputNumberContext(NUMBER_INPUT_FIELD_NAME, __scopeInputNumber);
|
|
@@ -426,12 +432,18 @@ function NumberStepperButton({ __scopeInputNumber, operation, ...props }) {
|
|
|
426
432
|
...props
|
|
427
433
|
});
|
|
428
434
|
}
|
|
435
|
+
/**
|
|
436
|
+
* @since 0.3.16-canary.0
|
|
437
|
+
*/
|
|
429
438
|
function InputNumberIncrementButton(props) {
|
|
430
439
|
return /* @__PURE__ */ jsx(NumberStepperButton, {
|
|
431
440
|
operation: "increment",
|
|
432
441
|
...props
|
|
433
442
|
});
|
|
434
443
|
}
|
|
444
|
+
/**
|
|
445
|
+
* @since 0.3.16-canary.0
|
|
446
|
+
*/
|
|
435
447
|
function InputNumberDecrementButton(props) {
|
|
436
448
|
return /* @__PURE__ */ jsx(NumberStepperButton, {
|
|
437
449
|
operation: "decrement",
|
|
@@ -57,13 +57,23 @@ interface InputBehaviorProps {
|
|
|
57
57
|
}
|
|
58
58
|
/**
|
|
59
59
|
* Combined props for the Input component
|
|
60
|
+
*
|
|
61
|
+
* @since 0.3.16-canary.0
|
|
60
62
|
*/
|
|
61
63
|
type InputProps = PropsWithChildren<InputBehaviorProps & InputVisualProps>;
|
|
64
|
+
/**
|
|
65
|
+
* @since 0.3.16-canary.0
|
|
66
|
+
*/
|
|
62
67
|
declare function Input(inputProps: ScopedProps<InputProps>): JSX.Element;
|
|
63
68
|
/**
|
|
64
69
|
* Props for the InputField component
|
|
70
|
+
*
|
|
71
|
+
* @since 0.3.16-canary.0
|
|
65
72
|
*/
|
|
66
73
|
type InputFieldProps = ComponentProps<"input">;
|
|
74
|
+
/**
|
|
75
|
+
* @since 0.3.16-canary.0
|
|
76
|
+
*/
|
|
67
77
|
declare function InputField({
|
|
68
78
|
__scopeInput,
|
|
69
79
|
...props
|
|
@@ -6,6 +6,9 @@ import { useComposedRefs } from "@radix-ui/react-compose-refs";
|
|
|
6
6
|
const INPUT_NAME = "Input";
|
|
7
7
|
const [createInputContext, createInputScope] = createContextScope(INPUT_NAME);
|
|
8
8
|
const [InputContextProvider, useInputContext] = createInputContext(INPUT_NAME);
|
|
9
|
+
/**
|
|
10
|
+
* @since 0.3.16-canary.0
|
|
11
|
+
*/
|
|
9
12
|
function Input(inputProps) {
|
|
10
13
|
const { __scopeInput, children, disabled, loaderPosition = "prefix", loading, prefix, readOnly, spinner, suffix, ...props } = inputProps;
|
|
11
14
|
/**
|
|
@@ -58,6 +61,9 @@ function Input(inputProps) {
|
|
|
58
61
|
});
|
|
59
62
|
}
|
|
60
63
|
const INPUT_FIELD_NAME = "InputField";
|
|
64
|
+
/**
|
|
65
|
+
* @since 0.3.16-canary.0
|
|
66
|
+
*/
|
|
61
67
|
function InputField({ __scopeInput, ...props }) {
|
|
62
68
|
/**
|
|
63
69
|
* Context values from parent Input component
|
|
@@ -24,6 +24,9 @@ interface Threshold {
|
|
|
24
24
|
value: number;
|
|
25
25
|
}
|
|
26
26
|
declare const createProgressCircleScope: _$_radix_ui_react_context0.CreateScope;
|
|
27
|
+
/**
|
|
28
|
+
* @since 0.3.16-canary.0
|
|
29
|
+
*/
|
|
27
30
|
interface ProgressCircleProviderProps {
|
|
28
31
|
/**
|
|
29
32
|
* React children to be rendered inside the progress circle
|
|
@@ -92,6 +95,8 @@ interface ProgressCircleProviderProps {
|
|
|
92
95
|
* <ProgressCircleValue />
|
|
93
96
|
* </ProgressCircleProvider>
|
|
94
97
|
* ```
|
|
98
|
+
*
|
|
99
|
+
* @since 0.3.16-canary.0
|
|
95
100
|
*/
|
|
96
101
|
declare function ProgressCircleProvider({
|
|
97
102
|
__scopeProgressCircle,
|
|
@@ -106,46 +111,69 @@ declare function ProgressCircleProvider({
|
|
|
106
111
|
thresholds,
|
|
107
112
|
value
|
|
108
113
|
}: ScopedProps<ProgressCircleProviderProps>): ReactNode;
|
|
114
|
+
/**
|
|
115
|
+
* @since 0.3.16-canary.0
|
|
116
|
+
*/
|
|
109
117
|
type ProgressCircleProps = ComponentProps<"div">;
|
|
110
118
|
/**
|
|
111
119
|
* Root component for the progress circle
|
|
112
120
|
*
|
|
113
121
|
* Serves as a wrapper for other progress circle components.
|
|
122
|
+
*
|
|
123
|
+
* @since 0.3.16-canary.0
|
|
114
124
|
*/
|
|
115
125
|
declare function ProgressCircle({
|
|
116
126
|
__scopeProgressCircle,
|
|
117
127
|
...props
|
|
118
128
|
}: ScopedProps<ProgressCircleProps>): ReactNode;
|
|
129
|
+
/**
|
|
130
|
+
* @since 0.3.16-canary.0
|
|
131
|
+
*/
|
|
119
132
|
type ProgressCircleSVGProps = ComponentProps<"svg">;
|
|
120
133
|
/**
|
|
121
134
|
* SVG container for the progress circle
|
|
122
135
|
*
|
|
123
136
|
* Renders the SVG with accessibility attributes and supports indeterminate state.
|
|
137
|
+
*
|
|
138
|
+
* @since 0.3.16-canary.0
|
|
124
139
|
*/
|
|
125
140
|
declare function ProgressCircleSVG({
|
|
126
141
|
__scopeProgressCircle,
|
|
127
142
|
...props
|
|
128
143
|
}: ScopedProps<ProgressCircleSVGProps>): ReactNode;
|
|
144
|
+
/**
|
|
145
|
+
* @since 0.3.16-canary.0
|
|
146
|
+
*/
|
|
129
147
|
type ProgressCircleTrackProps = ComponentProps<"circle">;
|
|
130
148
|
/**
|
|
131
149
|
* Background circle for the progress indicator
|
|
132
150
|
*
|
|
133
151
|
* Renders the static track of the progress circle.
|
|
152
|
+
*
|
|
153
|
+
* @since 0.3.16-canary.0
|
|
134
154
|
*/
|
|
135
155
|
declare function ProgressCircleTrack({
|
|
136
156
|
__scopeProgressCircle,
|
|
137
157
|
...props
|
|
138
158
|
}: ScopedProps<ProgressCircleTrackProps>): ReactNode;
|
|
159
|
+
/**
|
|
160
|
+
* @since 0.3.16-canary.0
|
|
161
|
+
*/
|
|
139
162
|
type ProgressCircleIndicatorProps = ComponentProps<"circle">;
|
|
140
163
|
/**
|
|
141
164
|
* Foreground circle showing progress
|
|
142
165
|
*
|
|
143
166
|
* Renders the dynamic progress indicator with stroke dash properties.
|
|
167
|
+
*
|
|
168
|
+
* @since 0.3.16-canary.0
|
|
144
169
|
*/
|
|
145
170
|
declare function ProgressCircleIndicator({
|
|
146
171
|
__scopeProgressCircle,
|
|
147
172
|
...props
|
|
148
173
|
}: ScopedProps<ProgressCircleIndicatorProps>): ReactNode;
|
|
174
|
+
/**
|
|
175
|
+
* @since 0.3.16-canary.0
|
|
176
|
+
*/
|
|
149
177
|
interface ProgressCircleValueProps extends Omit<ComponentProps<"div">, "children"> {
|
|
150
178
|
children?: ((context: {
|
|
151
179
|
value: number | undefined;
|
|
@@ -156,6 +184,8 @@ interface ProgressCircleValueProps extends Omit<ComponentProps<"div">, "children
|
|
|
156
184
|
* Displays the current progress value
|
|
157
185
|
*
|
|
158
186
|
* Supports custom content or default value text rendering.
|
|
187
|
+
*
|
|
188
|
+
* @since 0.3.16-canary.0
|
|
159
189
|
*/
|
|
160
190
|
declare function ProgressCircleValue({
|
|
161
191
|
__scopeProgressCircle,
|
|
@@ -8,10 +8,10 @@ const [createProgressCircleContext, createProgressCircleScope] = createContextSc
|
|
|
8
8
|
const [ProgressCircleContextProvider, useProgressCircleContext] = createProgressCircleContext(PROGRESS_CIRCLE_PROVIDER_NAME);
|
|
9
9
|
/**
|
|
10
10
|
* Provides context for the ProgressCircle component
|
|
11
|
-
*
|
|
11
|
+
*
|
|
12
12
|
* Manages calculations for rendering the circular progress indicator,
|
|
13
13
|
* including value clamping, sizing, thresholds, and indeterminate state.
|
|
14
|
-
*
|
|
14
|
+
*
|
|
15
15
|
* @example
|
|
16
16
|
* ```tsx
|
|
17
17
|
* <ProgressCircleProvider
|
|
@@ -32,6 +32,8 @@ const [ProgressCircleContextProvider, useProgressCircleContext] = createProgress
|
|
|
32
32
|
* <ProgressCircleValue />
|
|
33
33
|
* </ProgressCircleProvider>
|
|
34
34
|
* ```
|
|
35
|
+
*
|
|
36
|
+
* @since 0.3.16-canary.0
|
|
35
37
|
*/
|
|
36
38
|
function ProgressCircleProvider({ __scopeProgressCircle, children, formatValue, id: propertyId, max = 100, min = 0, size = 48, startAngle = -90, strokeWidth = 4, thresholds, value }) {
|
|
37
39
|
const uniqueId = useId();
|
|
@@ -78,8 +80,10 @@ function ProgressCircleProvider({ __scopeProgressCircle, children, formatValue,
|
|
|
78
80
|
}
|
|
79
81
|
/**
|
|
80
82
|
* Root component for the progress circle
|
|
81
|
-
*
|
|
83
|
+
*
|
|
82
84
|
* Serves as a wrapper for other progress circle components.
|
|
85
|
+
*
|
|
86
|
+
* @since 0.3.16-canary.0
|
|
83
87
|
*/
|
|
84
88
|
function ProgressCircle({ __scopeProgressCircle, ...props }) {
|
|
85
89
|
return /* @__PURE__ */ jsx("div", { ...props });
|
|
@@ -87,8 +91,10 @@ function ProgressCircle({ __scopeProgressCircle, ...props }) {
|
|
|
87
91
|
const PROGRESS_CIRCLE_SVG_NAME = "ProgressCircleSVG";
|
|
88
92
|
/**
|
|
89
93
|
* SVG container for the progress circle
|
|
90
|
-
*
|
|
94
|
+
*
|
|
91
95
|
* Renders the SVG with accessibility attributes and supports indeterminate state.
|
|
96
|
+
*
|
|
97
|
+
* @since 0.3.16-canary.0
|
|
92
98
|
*/
|
|
93
99
|
function ProgressCircleSVG({ __scopeProgressCircle, ...props }) {
|
|
94
100
|
const { clampedValue, id, max, min, size, valueText } = useProgressCircleContext(PROGRESS_CIRCLE_SVG_NAME, __scopeProgressCircle);
|
|
@@ -109,8 +115,10 @@ function ProgressCircleSVG({ __scopeProgressCircle, ...props }) {
|
|
|
109
115
|
const PROGRESS_CIRCLE_TRACK_NAME = "ProgressCircleTrack";
|
|
110
116
|
/**
|
|
111
117
|
* Background circle for the progress indicator
|
|
112
|
-
*
|
|
118
|
+
*
|
|
113
119
|
* Renders the static track of the progress circle.
|
|
120
|
+
*
|
|
121
|
+
* @since 0.3.16-canary.0
|
|
114
122
|
*/
|
|
115
123
|
function ProgressCircleTrack({ __scopeProgressCircle, ...props }) {
|
|
116
124
|
const { center, radius, strokeWidth, threshold } = useProgressCircleContext(PROGRESS_CIRCLE_TRACK_NAME, __scopeProgressCircle);
|
|
@@ -127,8 +135,10 @@ function ProgressCircleTrack({ __scopeProgressCircle, ...props }) {
|
|
|
127
135
|
const PROGRESS_CIRCLE_INDICATOR_NAME = "ProgressCircleIndicator";
|
|
128
136
|
/**
|
|
129
137
|
* Foreground circle showing progress
|
|
130
|
-
*
|
|
138
|
+
*
|
|
131
139
|
* Renders the dynamic progress indicator with stroke dash properties.
|
|
140
|
+
*
|
|
141
|
+
* @since 0.3.16-canary.0
|
|
132
142
|
*/
|
|
133
143
|
function ProgressCircleIndicator({ __scopeProgressCircle, ...props }) {
|
|
134
144
|
const { center, circumference, radius, rotationTransform, strokeDashoffset, strokeWidth, threshold } = useProgressCircleContext(PROGRESS_CIRCLE_INDICATOR_NAME, __scopeProgressCircle);
|
|
@@ -149,8 +159,10 @@ function ProgressCircleIndicator({ __scopeProgressCircle, ...props }) {
|
|
|
149
159
|
const PROGRESS_CIRCLE_VALUE_NAME = "ProgressCircleValue";
|
|
150
160
|
/**
|
|
151
161
|
* Displays the current progress value
|
|
152
|
-
*
|
|
162
|
+
*
|
|
153
163
|
* Supports custom content or default value text rendering.
|
|
164
|
+
*
|
|
165
|
+
* @since 0.3.16-canary.0
|
|
154
166
|
*/
|
|
155
167
|
function ProgressCircleValue({ __scopeProgressCircle, children, ...props }) {
|
|
156
168
|
const { clampedValue, valueText } = useProgressCircleContext(PROGRESS_CIRCLE_VALUE_NAME, __scopeProgressCircle);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codefast/ui",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.16-canary.0",
|
|
4
4
|
"description": "Core UI components library built with React and Tailwind CSS",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"components",
|
|
@@ -403,7 +403,7 @@
|
|
|
403
403
|
"sonner": "^2.0.7",
|
|
404
404
|
"tw-animate-css": "^1.4.0",
|
|
405
405
|
"vaul": "^1.1.2",
|
|
406
|
-
"@codefast/tailwind-variants": "0.3.
|
|
406
|
+
"@codefast/tailwind-variants": "0.3.16-canary.0"
|
|
407
407
|
},
|
|
408
408
|
"devDependencies": {
|
|
409
409
|
"@tailwindcss/postcss": "^4.2.4",
|
|
@@ -413,7 +413,7 @@
|
|
|
413
413
|
"@testing-library/user-event": "^14.6.1",
|
|
414
414
|
"@types/jest-axe": "^3.5.9",
|
|
415
415
|
"@types/node": "^25.6.0",
|
|
416
|
-
"@typescript/native-preview": "7.0.0-dev.
|
|
416
|
+
"@typescript/native-preview": "7.0.0-dev.20260504.1",
|
|
417
417
|
"@vitejs/plugin-react": "^6.0.1",
|
|
418
418
|
"@vitest/coverage-v8": "^4.1.5",
|
|
419
419
|
"jest-axe": "^10.0.0",
|
|
@@ -422,7 +422,7 @@
|
|
|
422
422
|
"tailwindcss": "^4.2.4",
|
|
423
423
|
"typescript": "^6.0.3",
|
|
424
424
|
"vitest": "^4.1.5",
|
|
425
|
-
"@codefast/typescript-config": "0.3.
|
|
425
|
+
"@codefast/typescript-config": "0.3.16-canary.0"
|
|
426
426
|
},
|
|
427
427
|
"peerDependencies": {
|
|
428
428
|
"@types/react": "^19.0",
|