@nexus-cross/design-system 1.0.0 → 1.0.2
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/cursor-rules/nexus-project-setup.mdc +150 -150
- package/cursor-rules/nexus-ui-api.mdc +659 -316
- package/cursor-rules/nexus-ui-components.mdc +162 -96
- package/dist/chunks/chunk-55IEEVNR.js +7 -0
- package/dist/chunks/{chunk-D6FII7HW.js → chunk-BBLBTOP4.js} +8 -5
- package/dist/chunks/{chunk-5JHN4FCY.mjs → chunk-K2TBLM3F.mjs} +1 -4
- package/dist/chunks/{chunk-MTX7GD3H.js → chunk-PEIEVKD5.js} +1 -4
- package/dist/chunks/{chunk-54RBL7J4.mjs → chunk-UKRU46PH.mjs} +8 -5
- package/dist/chunks/chunk-XMG7ZEYY.mjs +5 -0
- package/dist/data-list.js +2 -2
- package/dist/data-list.mjs +1 -1
- package/dist/error-boundary.d.mts +1 -1
- package/dist/error-boundary.d.ts +1 -1
- package/dist/index.js +5 -5
- package/dist/index.mjs +2 -2
- package/dist/schemas/_all.json +870 -373
- package/dist/schemas/accordion.json +12 -12
- package/dist/schemas/avatar.json +9 -9
- package/dist/schemas/button.json +27 -9
- package/dist/schemas/carousel.json +6 -6
- package/dist/schemas/carouselButton.json +3 -3
- package/dist/schemas/carouselDots.json +2 -2
- package/dist/schemas/carouselSlide.json +3 -3
- package/dist/schemas/checkBox.json +28 -10
- package/dist/schemas/chip.json +13 -7
- package/dist/schemas/clientOnly.json +3 -3
- package/dist/schemas/countdown.json +8 -8
- package/dist/schemas/counter.json +13 -10
- package/dist/schemas/dataList.json +10 -10
- package/dist/schemas/divider.json +8 -5
- package/dist/schemas/drawer.json +22 -3
- package/dist/schemas/drawerClose.json +24 -0
- package/dist/schemas/drawerContent.json +7 -7
- package/dist/schemas/drawerDescription.json +20 -0
- package/dist/schemas/drawerTitle.json +20 -0
- package/dist/schemas/drawerTrigger.json +24 -0
- package/dist/schemas/ellipsis.json +9 -9
- package/dist/schemas/errorBoundary.json +4 -4
- package/dist/schemas/infiniteScroll.json +12 -12
- package/dist/schemas/marquee.json +10 -7
- package/dist/schemas/modalCall.json +81 -3
- package/dist/schemas/modalTemplate.json +28 -25
- package/dist/schemas/numberInput.json +32 -14
- package/dist/schemas/pagination.json +8 -8
- package/dist/schemas/popover.json +12 -12
- package/dist/schemas/radioGroup.json +17 -10
- package/dist/schemas/radioItem.json +12 -5
- package/dist/schemas/select.json +11 -11
- package/dist/schemas/selectItem.json +5 -5
- package/dist/schemas/skeleton.json +10 -7
- package/dist/schemas/spinner.json +11 -4
- package/dist/schemas/switch.json +18 -7
- package/dist/schemas/tab.json +15 -15
- package/dist/schemas/table.json +14 -14
- package/dist/schemas/tableRow.json +5 -5
- package/dist/schemas/tdColumn.json +17 -17
- package/dist/schemas/textArea.json +42 -9
- package/dist/schemas/textInput.json +55 -15
- package/dist/schemas/themeProvider.json +10 -10
- package/dist/schemas/toastOptions.json +81 -0
- package/dist/schemas/toaster.json +48 -3
- package/dist/schemas/tooltip.json +10 -10
- package/dist/schemas/virtualGrid.json +19 -16
- package/dist/schemas/virtualList.json +12 -9
- package/dist/schemas.d.mts +420 -56
- package/dist/schemas.d.ts +420 -56
- package/dist/schemas.js +502 -367
- package/dist/schemas.mjs +498 -368
- package/dist/styles/layer.js +2 -2
- package/dist/styles/layer.mjs +1 -1
- package/dist/styles.css +56 -45
- package/dist/styles.js +2 -2
- package/dist/styles.layered.css +56 -45
- package/dist/styles.mjs +1 -1
- package/dist/text-input.d.mts +1 -1
- package/dist/text-input.d.ts +1 -1
- package/dist/text-input.js +3 -3
- package/dist/text-input.mjs +1 -1
- package/package.json +8 -6
- package/scripts/setup-cursor-rules.cjs +6 -6
- package/dist/chunks/chunk-7AISZYWL.js +0 -7
- package/dist/chunks/chunk-V5OTJP6H.mjs +0 -5
|
@@ -11,17 +11,17 @@
|
|
|
11
11
|
"properties": {
|
|
12
12
|
"id": {
|
|
13
13
|
"type": "string",
|
|
14
|
-
"description": "
|
|
14
|
+
"description": "Unique ID"
|
|
15
15
|
},
|
|
16
16
|
"trigger": {
|
|
17
|
-
"description": "
|
|
17
|
+
"description": "Trigger content (ReactNode)"
|
|
18
18
|
},
|
|
19
19
|
"content": {
|
|
20
|
-
"description": "
|
|
20
|
+
"description": "Expandable content (ReactNode)"
|
|
21
21
|
},
|
|
22
22
|
"disabled": {
|
|
23
23
|
"type": "boolean",
|
|
24
|
-
"description": "
|
|
24
|
+
"description": "Disabled"
|
|
25
25
|
},
|
|
26
26
|
"className": {
|
|
27
27
|
"type": "string"
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
],
|
|
39
39
|
"additionalProperties": false
|
|
40
40
|
},
|
|
41
|
-
"description": "
|
|
41
|
+
"description": "Accordion item array (required)"
|
|
42
42
|
},
|
|
43
43
|
"type": {
|
|
44
44
|
"type": "string",
|
|
@@ -47,12 +47,12 @@
|
|
|
47
47
|
"multiple"
|
|
48
48
|
],
|
|
49
49
|
"default": "single",
|
|
50
|
-
"description": "
|
|
50
|
+
"description": "Single/multiple open mode"
|
|
51
51
|
},
|
|
52
52
|
"collapsible": {
|
|
53
53
|
"type": "boolean",
|
|
54
54
|
"default": true,
|
|
55
|
-
"description": "
|
|
55
|
+
"description": "Allow collapsing all"
|
|
56
56
|
},
|
|
57
57
|
"value": {
|
|
58
58
|
"anyOf": [
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
68
|
],
|
|
69
|
-
"description": "
|
|
69
|
+
"description": "Controlled mode"
|
|
70
70
|
},
|
|
71
71
|
"defaultValue": {
|
|
72
72
|
"anyOf": [
|
|
@@ -80,21 +80,21 @@
|
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
],
|
|
83
|
-
"description": "
|
|
83
|
+
"description": "Uncontrolled initial value"
|
|
84
84
|
},
|
|
85
85
|
"onValueChange": {
|
|
86
|
-
"description": "
|
|
86
|
+
"description": "Open item change callback (value: string | string[]) => void"
|
|
87
87
|
},
|
|
88
88
|
"className": {
|
|
89
89
|
"type": "string",
|
|
90
|
-
"description": "Root
|
|
90
|
+
"description": "Root style"
|
|
91
91
|
}
|
|
92
92
|
},
|
|
93
93
|
"required": [
|
|
94
94
|
"items"
|
|
95
95
|
],
|
|
96
96
|
"additionalProperties": false,
|
|
97
|
-
"description": "
|
|
97
|
+
"description": "Accordion. Supports both items array and composable patterns."
|
|
98
98
|
}
|
|
99
99
|
},
|
|
100
100
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
package/dist/schemas/avatar.json
CHANGED
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
"properties": {
|
|
7
7
|
"src": {
|
|
8
8
|
"type": "string",
|
|
9
|
-
"description": "
|
|
9
|
+
"description": "Image URL"
|
|
10
10
|
},
|
|
11
11
|
"alt": {
|
|
12
12
|
"type": "string",
|
|
13
|
-
"description": "
|
|
13
|
+
"description": "Alt text"
|
|
14
14
|
},
|
|
15
15
|
"fallback": {
|
|
16
|
-
"description": "
|
|
16
|
+
"description": "Displayed on image load failure (ReactNode)"
|
|
17
17
|
},
|
|
18
18
|
"size": {
|
|
19
19
|
"type": "string",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"xl"
|
|
26
26
|
],
|
|
27
27
|
"default": "md",
|
|
28
|
-
"description": "
|
|
28
|
+
"description": "Size"
|
|
29
29
|
},
|
|
30
30
|
"shape": {
|
|
31
31
|
"type": "string",
|
|
@@ -34,21 +34,21 @@
|
|
|
34
34
|
"square"
|
|
35
35
|
],
|
|
36
36
|
"default": "circle",
|
|
37
|
-
"description": "
|
|
37
|
+
"description": "Shape"
|
|
38
38
|
},
|
|
39
39
|
"children": {
|
|
40
|
-
"description": "
|
|
40
|
+
"description": "Custom image element (e.g. Next.js Image)"
|
|
41
41
|
},
|
|
42
42
|
"onImageError": {
|
|
43
|
-
"description": "
|
|
43
|
+
"description": "Image load error callback () => void"
|
|
44
44
|
},
|
|
45
45
|
"className": {
|
|
46
46
|
"type": "string",
|
|
47
|
-
"description": "
|
|
47
|
+
"description": "Style override"
|
|
48
48
|
}
|
|
49
49
|
},
|
|
50
50
|
"additionalProperties": false,
|
|
51
|
-
"description": "
|
|
51
|
+
"description": "Avatar. Supports image, fallback text, and children."
|
|
52
52
|
}
|
|
53
53
|
},
|
|
54
54
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
package/dist/schemas/button.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"danger"
|
|
14
14
|
],
|
|
15
15
|
"default": "primary",
|
|
16
|
-
"description": "
|
|
16
|
+
"description": "Color theme (primary=main, secondary=sub, normal=neutral, danger=danger)"
|
|
17
17
|
},
|
|
18
18
|
"variant": {
|
|
19
19
|
"type": "string",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"ghost"
|
|
25
25
|
],
|
|
26
26
|
"default": "contained",
|
|
27
|
-
"description": "
|
|
27
|
+
"description": "Visual style (contained=filled, outlined=border, subtle=light bg, ghost=transparent)"
|
|
28
28
|
},
|
|
29
29
|
"size": {
|
|
30
30
|
"type": "string",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"sm"
|
|
36
36
|
],
|
|
37
37
|
"default": "md",
|
|
38
|
-
"description": "
|
|
38
|
+
"description": "Size"
|
|
39
39
|
},
|
|
40
40
|
"radius": {
|
|
41
41
|
"type": "string",
|
|
@@ -44,27 +44,45 @@
|
|
|
44
44
|
"circle"
|
|
45
45
|
],
|
|
46
46
|
"default": "default",
|
|
47
|
-
"description": "
|
|
47
|
+
"description": "Corner radius (default=size-based radius, circle=pill shape)"
|
|
48
48
|
},
|
|
49
49
|
"asChild": {
|
|
50
50
|
"type": "boolean",
|
|
51
|
-
"description": "true
|
|
51
|
+
"description": "If true, renders as child element (Slot pattern)"
|
|
52
52
|
},
|
|
53
53
|
"detectDoubleClick": {
|
|
54
54
|
"type": "boolean",
|
|
55
|
-
"description": "
|
|
55
|
+
"description": "Prevent double click within 500ms"
|
|
56
56
|
},
|
|
57
57
|
"disabled": {
|
|
58
58
|
"type": "boolean",
|
|
59
|
-
"description": "
|
|
59
|
+
"description": "Disabled (auto aria-disabled)"
|
|
60
|
+
},
|
|
61
|
+
"children": {
|
|
62
|
+
"description": "Button content (ReactNode)"
|
|
63
|
+
},
|
|
64
|
+
"onClick": {
|
|
65
|
+
"description": "Click event handler"
|
|
66
|
+
},
|
|
67
|
+
"type": {
|
|
68
|
+
"type": "string",
|
|
69
|
+
"enum": [
|
|
70
|
+
"button",
|
|
71
|
+
"submit",
|
|
72
|
+
"reset"
|
|
73
|
+
],
|
|
74
|
+
"description": "HTML button type (default: button)"
|
|
75
|
+
},
|
|
76
|
+
"style": {
|
|
77
|
+
"description": "Inline style (CSSProperties)"
|
|
60
78
|
},
|
|
61
79
|
"className": {
|
|
62
80
|
"type": "string",
|
|
63
|
-
"description": "
|
|
81
|
+
"description": "Style override"
|
|
64
82
|
}
|
|
65
83
|
},
|
|
66
84
|
"additionalProperties": false,
|
|
67
|
-
"description": "
|
|
85
|
+
"description": "Interactive button. semantic(color) x variant(style) 2-axis system. Rendering element changeable via asChild."
|
|
68
86
|
}
|
|
69
87
|
},
|
|
70
88
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -7,25 +7,25 @@
|
|
|
7
7
|
"opts": {
|
|
8
8
|
"type": "object",
|
|
9
9
|
"additionalProperties": {},
|
|
10
|
-
"description": "Embla
|
|
10
|
+
"description": "Embla options (loop, align, etc.)"
|
|
11
11
|
},
|
|
12
12
|
"plugins": {
|
|
13
13
|
"type": "array",
|
|
14
|
-
"description": "Embla
|
|
14
|
+
"description": "Embla plugins"
|
|
15
15
|
},
|
|
16
16
|
"onApiChange": {
|
|
17
|
-
"description": "Embla API
|
|
17
|
+
"description": "Embla API change callback (api: CarouselApi) => void"
|
|
18
18
|
},
|
|
19
19
|
"children": {
|
|
20
|
-
"description": "
|
|
20
|
+
"description": "Carousel slides and sub-components (ReactNode)"
|
|
21
21
|
},
|
|
22
22
|
"className": {
|
|
23
23
|
"type": "string",
|
|
24
|
-
"description": "
|
|
24
|
+
"description": "Style override"
|
|
25
25
|
}
|
|
26
26
|
},
|
|
27
27
|
"additionalProperties": false,
|
|
28
|
-
"description": "
|
|
28
|
+
"description": "Carousel. Based on Embla Carousel. Sub-components: CarouselSlide, CarouselPrev, CarouselNext, CarouselDots."
|
|
29
29
|
}
|
|
30
30
|
},
|
|
31
31
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
"properties": {
|
|
7
7
|
"className": {
|
|
8
8
|
"type": "string",
|
|
9
|
-
"description": "
|
|
9
|
+
"description": "Button style override"
|
|
10
10
|
},
|
|
11
11
|
"children": {
|
|
12
|
-
"description": "
|
|
12
|
+
"description": "Custom icon (ReactNode, default: chevron)"
|
|
13
13
|
}
|
|
14
14
|
},
|
|
15
15
|
"additionalProperties": false,
|
|
16
|
-
"description": "CarouselPrev / CarouselNext.
|
|
16
|
+
"description": "CarouselPrev / CarouselNext. Previous/next navigation buttons."
|
|
17
17
|
}
|
|
18
18
|
},
|
|
19
19
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
"properties": {
|
|
7
7
|
"className": {
|
|
8
8
|
"type": "string",
|
|
9
|
-
"description": "
|
|
9
|
+
"description": "Dot container style"
|
|
10
10
|
}
|
|
11
11
|
},
|
|
12
12
|
"additionalProperties": false,
|
|
13
|
-
"description": "CarouselDots.
|
|
13
|
+
"description": "CarouselDots. Slide indicator dots."
|
|
14
14
|
}
|
|
15
15
|
},
|
|
16
16
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
"properties": {
|
|
7
7
|
"className": {
|
|
8
8
|
"type": "string",
|
|
9
|
-
"description": "
|
|
9
|
+
"description": "Slide style (use basis-1/3 etc. for multi-slide view)"
|
|
10
10
|
},
|
|
11
11
|
"children": {
|
|
12
|
-
"description": "
|
|
12
|
+
"description": "Slide content (ReactNode, required)"
|
|
13
13
|
}
|
|
14
14
|
},
|
|
15
15
|
"additionalProperties": false,
|
|
16
|
-
"description": "
|
|
16
|
+
"description": "Carousel slide. Used inside Carousel."
|
|
17
17
|
}
|
|
18
18
|
},
|
|
19
19
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"md"
|
|
12
12
|
],
|
|
13
13
|
"default": "md",
|
|
14
|
-
"description": "
|
|
14
|
+
"description": "Size"
|
|
15
15
|
},
|
|
16
16
|
"shape": {
|
|
17
17
|
"type": "string",
|
|
@@ -20,37 +20,55 @@
|
|
|
20
20
|
"round"
|
|
21
21
|
],
|
|
22
22
|
"default": "square",
|
|
23
|
-
"description": "
|
|
23
|
+
"description": "Shape"
|
|
24
24
|
},
|
|
25
25
|
"checked": {
|
|
26
26
|
"type": "boolean",
|
|
27
|
-
"description": "
|
|
27
|
+
"description": "Checked state"
|
|
28
28
|
},
|
|
29
29
|
"indeterminate": {
|
|
30
30
|
"type": "boolean",
|
|
31
|
-
"description": "
|
|
31
|
+
"description": "Indeterminate state (aria-checked=\"mixed\")"
|
|
32
32
|
},
|
|
33
33
|
"disabled": {
|
|
34
34
|
"type": "boolean",
|
|
35
|
-
"description": "
|
|
35
|
+
"description": "Disabled"
|
|
36
36
|
},
|
|
37
37
|
"readOnly": {
|
|
38
38
|
"type": "boolean",
|
|
39
|
-
"description": "
|
|
39
|
+
"description": "Read-only"
|
|
40
40
|
},
|
|
41
41
|
"label": {
|
|
42
|
-
"description": "
|
|
42
|
+
"description": "Label text (ReactNode)"
|
|
43
|
+
},
|
|
44
|
+
"children": {
|
|
45
|
+
"description": "Label alternative content (ReactNode)"
|
|
46
|
+
},
|
|
47
|
+
"name": {
|
|
48
|
+
"type": "string",
|
|
49
|
+
"description": "Form field name"
|
|
50
|
+
},
|
|
51
|
+
"id": {
|
|
52
|
+
"type": "string",
|
|
53
|
+
"description": "Element ID"
|
|
54
|
+
},
|
|
55
|
+
"value": {
|
|
56
|
+
"type": "string",
|
|
57
|
+
"description": "Value for form submission"
|
|
43
58
|
},
|
|
44
59
|
"onCheckedChange": {
|
|
45
|
-
"description": "
|
|
60
|
+
"description": "Checked state change callback (checked: boolean) => void"
|
|
61
|
+
},
|
|
62
|
+
"onChange": {
|
|
63
|
+
"description": "Native change event handler"
|
|
46
64
|
},
|
|
47
65
|
"className": {
|
|
48
66
|
"type": "string",
|
|
49
|
-
"description": "
|
|
67
|
+
"description": "Style override"
|
|
50
68
|
}
|
|
51
69
|
},
|
|
52
70
|
"additionalProperties": false,
|
|
53
|
-
"description": "
|
|
71
|
+
"description": "Checkbox. Native input-based, supports square/round shapes."
|
|
54
72
|
}
|
|
55
73
|
},
|
|
56
74
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
package/dist/schemas/chip.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"accent"
|
|
14
14
|
],
|
|
15
15
|
"default": "default",
|
|
16
|
-
"description": "
|
|
16
|
+
"description": "Style"
|
|
17
17
|
},
|
|
18
18
|
"size": {
|
|
19
19
|
"type": "string",
|
|
@@ -23,26 +23,32 @@
|
|
|
23
23
|
"lg"
|
|
24
24
|
],
|
|
25
25
|
"default": "md",
|
|
26
|
-
"description": "
|
|
26
|
+
"description": "Size"
|
|
27
27
|
},
|
|
28
28
|
"asChild": {
|
|
29
29
|
"type": "boolean",
|
|
30
|
-
"description": "true
|
|
30
|
+
"description": "If true, renders as child element (Slot pattern)"
|
|
31
31
|
},
|
|
32
32
|
"disabled": {
|
|
33
33
|
"type": "boolean",
|
|
34
|
-
"description": "
|
|
34
|
+
"description": "Disabled (auto aria-disabled)"
|
|
35
|
+
},
|
|
36
|
+
"children": {
|
|
37
|
+
"description": "Chip content (ReactNode)"
|
|
35
38
|
},
|
|
36
39
|
"onClose": {
|
|
37
|
-
"description": "
|
|
40
|
+
"description": "Close button click callback (e: MouseEvent) => void. Shows X button when provided"
|
|
41
|
+
},
|
|
42
|
+
"onClick": {
|
|
43
|
+
"description": "Click event handler"
|
|
38
44
|
},
|
|
39
45
|
"className": {
|
|
40
46
|
"type": "string",
|
|
41
|
-
"description": "
|
|
47
|
+
"description": "Style override"
|
|
42
48
|
}
|
|
43
49
|
},
|
|
44
50
|
"additionalProperties": false,
|
|
45
|
-
"description": "
|
|
51
|
+
"description": "Chip/tag/badge. Close button displayed via onClose prop."
|
|
46
52
|
}
|
|
47
53
|
},
|
|
48
54
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
"type": "object",
|
|
6
6
|
"properties": {
|
|
7
7
|
"children": {
|
|
8
|
-
"description": "
|
|
8
|
+
"description": "Element to render only on client (ReactNode, required)"
|
|
9
9
|
},
|
|
10
10
|
"fallback": {
|
|
11
|
-
"description": "
|
|
11
|
+
"description": "Fallback UI during SSR (ReactNode, default: null)"
|
|
12
12
|
}
|
|
13
13
|
},
|
|
14
14
|
"additionalProperties": false,
|
|
15
|
-
"description": "
|
|
15
|
+
"description": "Client-only rendering. Prevents hydration mismatch in SSR environments."
|
|
16
16
|
}
|
|
17
17
|
},
|
|
18
18
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -6,16 +6,16 @@
|
|
|
6
6
|
"properties": {
|
|
7
7
|
"endTimestamp": {
|
|
8
8
|
"type": "number",
|
|
9
|
-
"description": "
|
|
9
|
+
"description": "End time (Unix ms, required)"
|
|
10
10
|
},
|
|
11
11
|
"separator": {
|
|
12
12
|
"default": ":",
|
|
13
|
-
"description": "
|
|
13
|
+
"description": "Separator (ReactNode)"
|
|
14
14
|
},
|
|
15
15
|
"showDays": {
|
|
16
16
|
"type": "boolean",
|
|
17
17
|
"default": true,
|
|
18
|
-
"description": "
|
|
18
|
+
"description": "Show days unit"
|
|
19
19
|
},
|
|
20
20
|
"labels": {
|
|
21
21
|
"type": "object",
|
|
@@ -34,24 +34,24 @@
|
|
|
34
34
|
}
|
|
35
35
|
},
|
|
36
36
|
"additionalProperties": false,
|
|
37
|
-
"description": "
|
|
37
|
+
"description": "Unit labels"
|
|
38
38
|
},
|
|
39
39
|
"render": {
|
|
40
|
-
"description": "
|
|
40
|
+
"description": "Custom render function"
|
|
41
41
|
},
|
|
42
42
|
"onEnd": {
|
|
43
|
-
"description": "
|
|
43
|
+
"description": "Countdown end callback () => void"
|
|
44
44
|
},
|
|
45
45
|
"className": {
|
|
46
46
|
"type": "string",
|
|
47
|
-
"description": "
|
|
47
|
+
"description": "Style override"
|
|
48
48
|
}
|
|
49
49
|
},
|
|
50
50
|
"required": [
|
|
51
51
|
"endTimestamp"
|
|
52
52
|
],
|
|
53
53
|
"additionalProperties": false,
|
|
54
|
-
"description": "
|
|
54
|
+
"description": "Countdown timer."
|
|
55
55
|
}
|
|
56
56
|
},
|
|
57
57
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -6,51 +6,54 @@
|
|
|
6
6
|
"properties": {
|
|
7
7
|
"endValue": {
|
|
8
8
|
"type": "number",
|
|
9
|
-
"description": "
|
|
9
|
+
"description": "Target value (required)"
|
|
10
10
|
},
|
|
11
11
|
"startValue": {
|
|
12
12
|
"type": "number",
|
|
13
13
|
"default": 0,
|
|
14
|
-
"description": "
|
|
14
|
+
"description": "Start value"
|
|
15
15
|
},
|
|
16
16
|
"duration": {
|
|
17
17
|
"type": "number",
|
|
18
18
|
"default": 1500,
|
|
19
|
-
"description": "
|
|
19
|
+
"description": "Animation duration (ms)"
|
|
20
20
|
},
|
|
21
21
|
"delay": {
|
|
22
22
|
"type": "number",
|
|
23
23
|
"default": 0,
|
|
24
|
-
"description": "
|
|
24
|
+
"description": "Start delay (ms)"
|
|
25
25
|
},
|
|
26
26
|
"separator": {
|
|
27
27
|
"type": "boolean",
|
|
28
28
|
"default": true,
|
|
29
|
-
"description": "
|
|
29
|
+
"description": "Thousands separator"
|
|
30
30
|
},
|
|
31
31
|
"digits": {
|
|
32
32
|
"type": "number",
|
|
33
33
|
"default": 0,
|
|
34
|
-
"description": "
|
|
34
|
+
"description": "Decimal places"
|
|
35
35
|
},
|
|
36
36
|
"triggerOnView": {
|
|
37
37
|
"type": "boolean",
|
|
38
38
|
"default": false,
|
|
39
|
-
"description": "
|
|
39
|
+
"description": "Start on viewport entry"
|
|
40
40
|
},
|
|
41
41
|
"onEnd": {
|
|
42
|
-
"description": "
|
|
42
|
+
"description": "Count complete callback () => void"
|
|
43
|
+
},
|
|
44
|
+
"style": {
|
|
45
|
+
"description": "Inline style (CSSProperties)"
|
|
43
46
|
},
|
|
44
47
|
"className": {
|
|
45
48
|
"type": "string",
|
|
46
|
-
"description": "
|
|
49
|
+
"description": "Style override"
|
|
47
50
|
}
|
|
48
51
|
},
|
|
49
52
|
"required": [
|
|
50
53
|
"endValue"
|
|
51
54
|
],
|
|
52
55
|
"additionalProperties": false,
|
|
53
|
-
"description": "
|
|
56
|
+
"description": "Number count animation."
|
|
54
57
|
}
|
|
55
58
|
},
|
|
56
59
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -13,43 +13,43 @@
|
|
|
13
13
|
"type": "null"
|
|
14
14
|
}
|
|
15
15
|
],
|
|
16
|
-
"description": "
|
|
16
|
+
"description": "Data array to render. null = loading state (required)"
|
|
17
17
|
},
|
|
18
18
|
"noDataMessage": {
|
|
19
|
-
"description": "
|
|
19
|
+
"description": "Message for empty array (string | ReactElement)"
|
|
20
20
|
},
|
|
21
21
|
"errorFallback": {
|
|
22
|
-
"description": "
|
|
22
|
+
"description": "Fallback on error (ReactNode)"
|
|
23
23
|
},
|
|
24
24
|
"loadingElement": {
|
|
25
|
-
"description": "
|
|
25
|
+
"description": "Custom loading element (default: Spinner)"
|
|
26
26
|
},
|
|
27
27
|
"skeletonElement": {
|
|
28
|
-
"description": "
|
|
28
|
+
"description": "Skeleton element during loading (ReactElement)"
|
|
29
29
|
},
|
|
30
30
|
"skeletonCount": {
|
|
31
31
|
"type": "number",
|
|
32
32
|
"default": 3,
|
|
33
|
-
"description": "
|
|
33
|
+
"description": "Skeleton repeat count"
|
|
34
34
|
},
|
|
35
35
|
"loading": {
|
|
36
36
|
"type": "boolean",
|
|
37
37
|
"default": false,
|
|
38
|
-
"description": "
|
|
38
|
+
"description": "Force loading state"
|
|
39
39
|
},
|
|
40
40
|
"children": {
|
|
41
|
-
"description": "
|
|
41
|
+
"description": "Item render function: ({ item, index }) => ReactNode (required)"
|
|
42
42
|
},
|
|
43
43
|
"className": {
|
|
44
44
|
"type": "string",
|
|
45
|
-
"description": "
|
|
45
|
+
"description": "Root element style"
|
|
46
46
|
}
|
|
47
47
|
},
|
|
48
48
|
"required": [
|
|
49
49
|
"list"
|
|
50
50
|
],
|
|
51
51
|
"additionalProperties": false,
|
|
52
|
-
"description": "
|
|
52
|
+
"description": "Data list. Automatically handles loading/skeleton/empty/data states based on list. Built-in ErrorBoundary."
|
|
53
53
|
}
|
|
54
54
|
},
|
|
55
55
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"vertical"
|
|
12
12
|
],
|
|
13
13
|
"default": "horizontal",
|
|
14
|
-
"description": "
|
|
14
|
+
"description": "Direction"
|
|
15
15
|
},
|
|
16
16
|
"variant": {
|
|
17
17
|
"type": "string",
|
|
@@ -21,19 +21,22 @@
|
|
|
21
21
|
"dotted"
|
|
22
22
|
],
|
|
23
23
|
"default": "solid",
|
|
24
|
-
"description": "
|
|
24
|
+
"description": "Line style"
|
|
25
25
|
},
|
|
26
26
|
"color": {
|
|
27
27
|
"type": "string",
|
|
28
|
-
"description": "
|
|
28
|
+
"description": "Custom color (CSS value)"
|
|
29
|
+
},
|
|
30
|
+
"style": {
|
|
31
|
+
"description": "Inline style (CSSProperties)"
|
|
29
32
|
},
|
|
30
33
|
"className": {
|
|
31
34
|
"type": "string",
|
|
32
|
-
"description": "
|
|
35
|
+
"description": "Style override"
|
|
33
36
|
}
|
|
34
37
|
},
|
|
35
38
|
"additionalProperties": false,
|
|
36
|
-
"description": "
|
|
39
|
+
"description": "Divider. Supports horizontal/vertical, solid/dashed/dotted."
|
|
37
40
|
}
|
|
38
41
|
},
|
|
39
42
|
"$schema": "http://json-schema.org/draft-07/schema#"
|