panelui-native 0.2.0 → 0.5.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/README.md +258 -0
- package/lib/module/components/accordion/index.js +312 -0
- package/lib/module/components/accordion/index.js.map +1 -0
- package/lib/module/components/alert/index.js +106 -13
- package/lib/module/components/alert/index.js.map +1 -1
- package/lib/module/components/avatar/index.js +58 -17
- package/lib/module/components/avatar/index.js.map +1 -1
- package/lib/module/components/badge/index.js +29 -8
- package/lib/module/components/badge/index.js.map +1 -1
- package/lib/module/components/button/index.js +87 -26
- package/lib/module/components/button/index.js.map +1 -1
- package/lib/module/components/checkbox/index.js +59 -18
- package/lib/module/components/checkbox/index.js.map +1 -1
- package/lib/module/components/empty-state/index.js +178 -0
- package/lib/module/components/empty-state/index.js.map +1 -0
- package/lib/module/components/frame/index.js +64 -13
- package/lib/module/components/frame/index.js.map +1 -1
- package/lib/module/components/input-group/index.js +132 -0
- package/lib/module/components/input-group/index.js.map +1 -0
- package/lib/module/components/label/index.js +117 -0
- package/lib/module/components/label/index.js.map +1 -0
- package/lib/module/components/progress/index.js +138 -0
- package/lib/module/components/progress/index.js.map +1 -0
- package/lib/module/components/steps/index.js +354 -0
- package/lib/module/components/steps/index.js.map +1 -0
- package/lib/module/components/tabs/index.js +9 -3
- package/lib/module/components/tabs/index.js.map +1 -1
- package/lib/module/components/timeline/index.js +633 -0
- package/lib/module/components/timeline/index.js.map +1 -0
- package/lib/module/components/toast/index.js +569 -0
- package/lib/module/components/toast/index.js.map +1 -0
- package/lib/module/components/toast/toast-store.js +81 -0
- package/lib/module/components/toast/toast-store.js.map +1 -0
- package/lib/module/components/typography/index.js +126 -0
- package/lib/module/components/typography/index.js.map +1 -0
- package/lib/module/icons/index.js +590 -8
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/index.js +11 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/providers/panel-ui-provider.js +2 -1
- package/lib/module/providers/panel-ui-provider.js.map +1 -1
- package/lib/module/theme/use-theme.js +90 -3
- package/lib/module/theme/use-theme.js.map +1 -1
- package/lib/typescript/src/components/accordion/index.d.ts +56 -0
- package/lib/typescript/src/components/accordion/index.d.ts.map +1 -0
- package/lib/typescript/src/components/alert/index.d.ts +56 -4
- package/lib/typescript/src/components/alert/index.d.ts.map +1 -1
- package/lib/typescript/src/components/avatar/index.d.ts +8 -1
- package/lib/typescript/src/components/avatar/index.d.ts.map +1 -1
- package/lib/typescript/src/components/badge/index.d.ts +38 -0
- package/lib/typescript/src/components/badge/index.d.ts.map +1 -1
- package/lib/typescript/src/components/button/index.d.ts +57 -0
- package/lib/typescript/src/components/button/index.d.ts.map +1 -1
- package/lib/typescript/src/components/checkbox/index.d.ts +50 -0
- package/lib/typescript/src/components/checkbox/index.d.ts.map +1 -1
- package/lib/typescript/src/components/empty-state/index.d.ts +73 -0
- package/lib/typescript/src/components/empty-state/index.d.ts.map +1 -0
- package/lib/typescript/src/components/frame/index.d.ts +39 -5
- package/lib/typescript/src/components/frame/index.d.ts.map +1 -1
- package/lib/typescript/src/components/input-group/index.d.ts +34 -0
- package/lib/typescript/src/components/input-group/index.d.ts.map +1 -0
- package/lib/typescript/src/components/label/index.d.ts +28 -0
- package/lib/typescript/src/components/label/index.d.ts.map +1 -0
- package/lib/typescript/src/components/progress/index.d.ts +132 -0
- package/lib/typescript/src/components/progress/index.d.ts.map +1 -0
- package/lib/typescript/src/components/steps/index.d.ts +62 -0
- package/lib/typescript/src/components/steps/index.d.ts.map +1 -0
- package/lib/typescript/src/components/tabs/index.d.ts.map +1 -1
- package/lib/typescript/src/components/timeline/index.d.ts +96 -0
- package/lib/typescript/src/components/timeline/index.d.ts.map +1 -0
- package/lib/typescript/src/components/toast/index.d.ts +176 -0
- package/lib/typescript/src/components/toast/index.d.ts.map +1 -0
- package/lib/typescript/src/components/toast/toast-store.d.ts +65 -0
- package/lib/typescript/src/components/toast/toast-store.d.ts.map +1 -0
- package/lib/typescript/src/components/typography/index.d.ts +77 -0
- package/lib/typescript/src/components/typography/index.d.ts.map +1 -0
- package/lib/typescript/src/icons/index.d.ts +60 -0
- package/lib/typescript/src/icons/index.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +13 -4
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/providers/panel-ui-provider.d.ts.map +1 -1
- package/lib/typescript/src/theme/use-theme.d.ts +64 -4
- package/lib/typescript/src/theme/use-theme.d.ts.map +1 -1
- package/package.json +22 -4
- package/src/components/accordion/index.tsx +344 -0
- package/src/components/alert/index.tsx +102 -16
- package/src/components/avatar/index.tsx +68 -20
- package/src/components/badge/index.tsx +38 -9
- package/src/components/button/index.tsx +102 -19
- package/src/components/checkbox/index.tsx +64 -12
- package/src/components/empty-state/index.tsx +136 -0
- package/src/components/frame/index.tsx +101 -31
- package/src/components/input-group/index.tsx +164 -0
- package/src/components/label/index.tsx +128 -0
- package/src/components/progress/index.tsx +147 -0
- package/src/components/steps/index.tsx +343 -0
- package/src/components/tabs/index.tsx +10 -2
- package/src/components/timeline/index.tsx +456 -0
- package/src/components/toast/index.tsx +568 -0
- package/src/components/toast/toast-store.ts +120 -0
- package/src/components/typography/index.tsx +121 -0
- package/src/icons/index.tsx +423 -7
- package/src/index.ts +114 -4
- package/src/providers/panel-ui-provider.tsx +3 -0
- package/src/theme/use-theme.ts +119 -4
- package/theme.css +330 -7
|
@@ -7,22 +7,33 @@ declare const buttonVariants: import("tailwind-variants").TVReturnType<{
|
|
|
7
7
|
primary: {
|
|
8
8
|
root: string;
|
|
9
9
|
label: string;
|
|
10
|
+
spinner: string;
|
|
10
11
|
};
|
|
11
12
|
secondary: {
|
|
12
13
|
root: string;
|
|
13
14
|
label: string;
|
|
15
|
+
spinner: string;
|
|
14
16
|
};
|
|
15
17
|
outline: {
|
|
16
18
|
root: string;
|
|
17
19
|
label: string;
|
|
20
|
+
spinner: string;
|
|
18
21
|
};
|
|
19
22
|
ghost: {
|
|
20
23
|
root: string;
|
|
21
24
|
label: string;
|
|
25
|
+
spinner: string;
|
|
22
26
|
};
|
|
23
27
|
destructive: {
|
|
24
28
|
root: string;
|
|
25
29
|
label: string;
|
|
30
|
+
spinner: string;
|
|
31
|
+
};
|
|
32
|
+
/** Neutral surface for third-party sign-in, sized for a full-width stack. */
|
|
33
|
+
social: {
|
|
34
|
+
root: string;
|
|
35
|
+
label: string;
|
|
36
|
+
spinner: string;
|
|
26
37
|
};
|
|
27
38
|
};
|
|
28
39
|
size: {
|
|
@@ -42,6 +53,11 @@ declare const buttonVariants: import("tailwind-variants").TVReturnType<{
|
|
|
42
53
|
root: string;
|
|
43
54
|
};
|
|
44
55
|
};
|
|
56
|
+
fullWidth: {
|
|
57
|
+
true: {
|
|
58
|
+
root: string;
|
|
59
|
+
};
|
|
60
|
+
};
|
|
45
61
|
disabled: {
|
|
46
62
|
true: {
|
|
47
63
|
root: string;
|
|
@@ -50,27 +66,39 @@ declare const buttonVariants: import("tailwind-variants").TVReturnType<{
|
|
|
50
66
|
}, {
|
|
51
67
|
root: string;
|
|
52
68
|
label: string;
|
|
69
|
+
spinner: string;
|
|
53
70
|
}, undefined, {
|
|
54
71
|
variant: {
|
|
55
72
|
primary: {
|
|
56
73
|
root: string;
|
|
57
74
|
label: string;
|
|
75
|
+
spinner: string;
|
|
58
76
|
};
|
|
59
77
|
secondary: {
|
|
60
78
|
root: string;
|
|
61
79
|
label: string;
|
|
80
|
+
spinner: string;
|
|
62
81
|
};
|
|
63
82
|
outline: {
|
|
64
83
|
root: string;
|
|
65
84
|
label: string;
|
|
85
|
+
spinner: string;
|
|
66
86
|
};
|
|
67
87
|
ghost: {
|
|
68
88
|
root: string;
|
|
69
89
|
label: string;
|
|
90
|
+
spinner: string;
|
|
70
91
|
};
|
|
71
92
|
destructive: {
|
|
72
93
|
root: string;
|
|
73
94
|
label: string;
|
|
95
|
+
spinner: string;
|
|
96
|
+
};
|
|
97
|
+
/** Neutral surface for third-party sign-in, sized for a full-width stack. */
|
|
98
|
+
social: {
|
|
99
|
+
root: string;
|
|
100
|
+
label: string;
|
|
101
|
+
spinner: string;
|
|
74
102
|
};
|
|
75
103
|
};
|
|
76
104
|
size: {
|
|
@@ -90,6 +118,11 @@ declare const buttonVariants: import("tailwind-variants").TVReturnType<{
|
|
|
90
118
|
root: string;
|
|
91
119
|
};
|
|
92
120
|
};
|
|
121
|
+
fullWidth: {
|
|
122
|
+
true: {
|
|
123
|
+
root: string;
|
|
124
|
+
};
|
|
125
|
+
};
|
|
93
126
|
disabled: {
|
|
94
127
|
true: {
|
|
95
128
|
root: string;
|
|
@@ -98,27 +131,39 @@ declare const buttonVariants: import("tailwind-variants").TVReturnType<{
|
|
|
98
131
|
}, {
|
|
99
132
|
root: string;
|
|
100
133
|
label: string;
|
|
134
|
+
spinner: string;
|
|
101
135
|
}, import("tailwind-variants").TVReturnType<{
|
|
102
136
|
variant: {
|
|
103
137
|
primary: {
|
|
104
138
|
root: string;
|
|
105
139
|
label: string;
|
|
140
|
+
spinner: string;
|
|
106
141
|
};
|
|
107
142
|
secondary: {
|
|
108
143
|
root: string;
|
|
109
144
|
label: string;
|
|
145
|
+
spinner: string;
|
|
110
146
|
};
|
|
111
147
|
outline: {
|
|
112
148
|
root: string;
|
|
113
149
|
label: string;
|
|
150
|
+
spinner: string;
|
|
114
151
|
};
|
|
115
152
|
ghost: {
|
|
116
153
|
root: string;
|
|
117
154
|
label: string;
|
|
155
|
+
spinner: string;
|
|
118
156
|
};
|
|
119
157
|
destructive: {
|
|
120
158
|
root: string;
|
|
121
159
|
label: string;
|
|
160
|
+
spinner: string;
|
|
161
|
+
};
|
|
162
|
+
/** Neutral surface for third-party sign-in, sized for a full-width stack. */
|
|
163
|
+
social: {
|
|
164
|
+
root: string;
|
|
165
|
+
label: string;
|
|
166
|
+
spinner: string;
|
|
122
167
|
};
|
|
123
168
|
};
|
|
124
169
|
size: {
|
|
@@ -138,6 +183,11 @@ declare const buttonVariants: import("tailwind-variants").TVReturnType<{
|
|
|
138
183
|
root: string;
|
|
139
184
|
};
|
|
140
185
|
};
|
|
186
|
+
fullWidth: {
|
|
187
|
+
true: {
|
|
188
|
+
root: string;
|
|
189
|
+
};
|
|
190
|
+
};
|
|
141
191
|
disabled: {
|
|
142
192
|
true: {
|
|
143
193
|
root: string;
|
|
@@ -146,11 +196,18 @@ declare const buttonVariants: import("tailwind-variants").TVReturnType<{
|
|
|
146
196
|
}, {
|
|
147
197
|
root: string;
|
|
148
198
|
label: string;
|
|
199
|
+
spinner: string;
|
|
149
200
|
}, undefined, unknown, unknown, undefined>>;
|
|
150
201
|
type ButtonVariantProps = VariantProps<typeof buttonVariants>;
|
|
151
202
|
export interface ButtonProps extends Omit<AnimatedPressableProps, 'children' | 'disabled'>, Omit<ButtonVariantProps, 'disabled'> {
|
|
152
203
|
children?: ReactNode;
|
|
153
204
|
disabled?: boolean;
|
|
205
|
+
/** Show a spinner and block presses while an action is in flight. */
|
|
206
|
+
loading?: boolean;
|
|
207
|
+
/** Content rendered before the label (replaced by the spinner while loading). */
|
|
208
|
+
startContent?: ReactNode;
|
|
209
|
+
/** Content rendered after the label. */
|
|
210
|
+
endContent?: ReactNode;
|
|
154
211
|
/** Extra classes for the label when children is a string. */
|
|
155
212
|
labelClassName?: string;
|
|
156
213
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/button/index.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/button/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,wCAAqC,CAAC;AAK7C,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;QAiCd,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAA7E,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAA7E,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAwBjF,CAAC;AAEH,KAAK,kBAAkB,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC;AAsB9D,MAAM,WAAW,WACf,SAAQ,IAAI,CAAC,sBAAsB,EAAE,UAAU,GAAG,UAAU,CAAC,EAC3D,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC;IACtC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iFAAiF;IACjF,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,wCAAwC;IACxC,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,MAAM,8FAiElB,CAAC"}
|
|
@@ -1,6 +1,20 @@
|
|
|
1
1
|
import { View } from 'react-native';
|
|
2
2
|
import { type VariantProps } from 'tailwind-variants';
|
|
3
3
|
declare const checkboxVariants: import("tailwind-variants").TVReturnType<{
|
|
4
|
+
variant: {
|
|
5
|
+
default: {};
|
|
6
|
+
/**
|
|
7
|
+
* The whole surface is the target — for pickable options where the
|
|
8
|
+
* checkbox is a confirmation rather than the affordance itself.
|
|
9
|
+
*/
|
|
10
|
+
card: {
|
|
11
|
+
row: string;
|
|
12
|
+
label: string;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
checked: {
|
|
16
|
+
true: {};
|
|
17
|
+
};
|
|
4
18
|
disabled: {
|
|
5
19
|
true: {
|
|
6
20
|
row: string;
|
|
@@ -10,8 +24,24 @@ declare const checkboxVariants: import("tailwind-variants").TVReturnType<{
|
|
|
10
24
|
row: string;
|
|
11
25
|
box: string;
|
|
12
26
|
fill: string;
|
|
27
|
+
content: string;
|
|
13
28
|
label: string;
|
|
29
|
+
description: string;
|
|
14
30
|
}, undefined, {
|
|
31
|
+
variant: {
|
|
32
|
+
default: {};
|
|
33
|
+
/**
|
|
34
|
+
* The whole surface is the target — for pickable options where the
|
|
35
|
+
* checkbox is a confirmation rather than the affordance itself.
|
|
36
|
+
*/
|
|
37
|
+
card: {
|
|
38
|
+
row: string;
|
|
39
|
+
label: string;
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
checked: {
|
|
43
|
+
true: {};
|
|
44
|
+
};
|
|
15
45
|
disabled: {
|
|
16
46
|
true: {
|
|
17
47
|
row: string;
|
|
@@ -21,8 +51,24 @@ declare const checkboxVariants: import("tailwind-variants").TVReturnType<{
|
|
|
21
51
|
row: string;
|
|
22
52
|
box: string;
|
|
23
53
|
fill: string;
|
|
54
|
+
content: string;
|
|
24
55
|
label: string;
|
|
56
|
+
description: string;
|
|
25
57
|
}, import("tailwind-variants").TVReturnType<{
|
|
58
|
+
variant: {
|
|
59
|
+
default: {};
|
|
60
|
+
/**
|
|
61
|
+
* The whole surface is the target — for pickable options where the
|
|
62
|
+
* checkbox is a confirmation rather than the affordance itself.
|
|
63
|
+
*/
|
|
64
|
+
card: {
|
|
65
|
+
row: string;
|
|
66
|
+
label: string;
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
checked: {
|
|
70
|
+
true: {};
|
|
71
|
+
};
|
|
26
72
|
disabled: {
|
|
27
73
|
true: {
|
|
28
74
|
row: string;
|
|
@@ -32,7 +78,9 @@ declare const checkboxVariants: import("tailwind-variants").TVReturnType<{
|
|
|
32
78
|
row: string;
|
|
33
79
|
box: string;
|
|
34
80
|
fill: string;
|
|
81
|
+
content: string;
|
|
35
82
|
label: string;
|
|
83
|
+
description: string;
|
|
36
84
|
}, undefined, unknown, unknown, undefined>>;
|
|
37
85
|
export interface CheckboxProps extends VariantProps<typeof checkboxVariants> {
|
|
38
86
|
className?: string;
|
|
@@ -41,6 +89,8 @@ export interface CheckboxProps extends VariantProps<typeof checkboxVariants> {
|
|
|
41
89
|
disabled?: boolean;
|
|
42
90
|
/** Optional label rendered next to the box; pressing it also toggles. */
|
|
43
91
|
label?: string;
|
|
92
|
+
/** Secondary line under the label, for extra context. */
|
|
93
|
+
description?: string;
|
|
44
94
|
}
|
|
45
95
|
export declare const Checkbox: import("react").ForwardRefExoticComponent<CheckboxProps & import("react").RefAttributes<View>>;
|
|
46
96
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/checkbox/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAa,IAAI,EAAE,MAAM,cAAc,CAAC;AAO/C,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAK1D,QAAA,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/checkbox/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAa,IAAI,EAAE,MAAM,cAAc,CAAC;AAO/C,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAK1D,QAAA,MAAM,gBAAgB;;;QAYhB;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;QAHH;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;QAHH;;;WAGG;;;;;;;;;;;;;;;;;;;;;2CAuBP,CAAC;AAEH,MAAM,WAAW,aAAc,SAAQ,YAAY,CAAC,OAAO,gBAAgB,CAAC;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,QAAQ,gGAgEpB,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EmptyState — the placeholder shown when a list or view has no content.
|
|
3
|
+
*
|
|
4
|
+
* Adapted from: cosscom/coss packages/ui/src/components/empty.tsx
|
|
5
|
+
* (centered Header / Media / Title / Description / Content anatomy, and the
|
|
6
|
+
* `icon` media variant that stacks two rotated ghost cards behind the icon).
|
|
7
|
+
* Coss does that with CSS pseudo-elements; on native it is two absolutely
|
|
8
|
+
* positioned siblings with static rotate transforms.
|
|
9
|
+
*/
|
|
10
|
+
import { type ReactNode } from 'react';
|
|
11
|
+
import { View, type Text as RNText, type ViewProps } from 'react-native';
|
|
12
|
+
import { type VariantProps } from 'tailwind-variants';
|
|
13
|
+
import { type TextProps } from '../../primitives/text.js';
|
|
14
|
+
declare const mediaVariants: import("tailwind-variants").TVReturnType<{
|
|
15
|
+
variant: {
|
|
16
|
+
default: {
|
|
17
|
+
card: string;
|
|
18
|
+
ghost: string;
|
|
19
|
+
};
|
|
20
|
+
icon: {
|
|
21
|
+
card: string;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
}, {
|
|
25
|
+
wrapper: string;
|
|
26
|
+
card: string;
|
|
27
|
+
ghost: string;
|
|
28
|
+
}, undefined, {
|
|
29
|
+
variant: {
|
|
30
|
+
default: {
|
|
31
|
+
card: string;
|
|
32
|
+
ghost: string;
|
|
33
|
+
};
|
|
34
|
+
icon: {
|
|
35
|
+
card: string;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
}, {
|
|
39
|
+
wrapper: string;
|
|
40
|
+
card: string;
|
|
41
|
+
ghost: string;
|
|
42
|
+
}, import("tailwind-variants").TVReturnType<{
|
|
43
|
+
variant: {
|
|
44
|
+
default: {
|
|
45
|
+
card: string;
|
|
46
|
+
ghost: string;
|
|
47
|
+
};
|
|
48
|
+
icon: {
|
|
49
|
+
card: string;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
}, {
|
|
53
|
+
wrapper: string;
|
|
54
|
+
card: string;
|
|
55
|
+
ghost: string;
|
|
56
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
57
|
+
export interface EmptyStateProps extends ViewProps {
|
|
58
|
+
className?: string;
|
|
59
|
+
children?: ReactNode;
|
|
60
|
+
}
|
|
61
|
+
export interface EmptyStateMediaProps extends ViewProps, VariantProps<typeof mediaVariants> {
|
|
62
|
+
className?: string;
|
|
63
|
+
children?: ReactNode;
|
|
64
|
+
}
|
|
65
|
+
export declare const EmptyState: import("react").ForwardRefExoticComponent<EmptyStateProps & import("react").RefAttributes<View>> & {
|
|
66
|
+
Header: import("react").ForwardRefExoticComponent<EmptyStateProps & import("react").RefAttributes<View>>;
|
|
67
|
+
Media: import("react").ForwardRefExoticComponent<EmptyStateMediaProps & import("react").RefAttributes<View>>;
|
|
68
|
+
Title: import("react").ForwardRefExoticComponent<TextProps & import("react").RefAttributes<RNText>>;
|
|
69
|
+
Description: import("react").ForwardRefExoticComponent<TextProps & import("react").RefAttributes<RNText>>;
|
|
70
|
+
Content: import("react").ForwardRefExoticComponent<EmptyStateProps & import("react").RefAttributes<View>>;
|
|
71
|
+
};
|
|
72
|
+
export {};
|
|
73
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/empty-state/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,0BAAuB,CAAC;AAY7D,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAoBjB,CAAC;AAEH,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAmBD,MAAM,WAAW,oBACf,SAAQ,SAAS,EACf,YAAY,CAAC,OAAO,aAAa,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAwDD,eAAO,MAAM,UAAU;;;;;;CAMrB,CAAC"}
|
|
@@ -1,8 +1,38 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Frame — a widget shell: a titled surface wrapping an inset panel of rows,
|
|
3
|
+
* with an optional action on the header row and a caption underneath.
|
|
4
|
+
*
|
|
5
|
+
* Layout follows the nested-radius rule (inner radius = outer radius minus the
|
|
6
|
+
* gap between them), which is why the panel is `rounded-xl` inside a
|
|
7
|
+
* `rounded-2xl` shell. Since v0.4.0 the radius scale is theme-scoped, so this
|
|
8
|
+
* relationship holds while the absolute values change per theme.
|
|
9
|
+
*
|
|
10
|
+
* ```tsx
|
|
11
|
+
* <Frame>
|
|
12
|
+
* <Frame.Header>
|
|
13
|
+
* <Frame.Title>Usage Type</Frame.Title>
|
|
14
|
+
* <Frame.Action>Amount</Frame.Action>
|
|
15
|
+
* </Frame.Header>
|
|
16
|
+
* <Frame.Panel>
|
|
17
|
+
* <Frame.Row>…</Frame.Row>
|
|
18
|
+
* <Frame.Row divided>…</Frame.Row>
|
|
19
|
+
* </Frame.Panel>
|
|
20
|
+
* <Frame.Footer>Updated 2 minutes ago</Frame.Footer>
|
|
21
|
+
* </Frame>
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
import { type ReactNode } from 'react';
|
|
25
|
+
import { View, type Text as RNText, type ViewProps } from 'react-native';
|
|
2
26
|
import { type TextProps } from '../../primitives/text.js';
|
|
3
27
|
export interface FrameProps extends ViewProps {
|
|
4
28
|
className?: string;
|
|
5
29
|
}
|
|
30
|
+
export interface FrameHeaderProps extends FrameProps {
|
|
31
|
+
children?: ReactNode;
|
|
32
|
+
}
|
|
33
|
+
export interface FrameActionProps extends FrameProps {
|
|
34
|
+
children?: ReactNode;
|
|
35
|
+
}
|
|
6
36
|
/**
|
|
7
37
|
* A row inside a Frame.Panel. Pass `divided` on every row after the first to
|
|
8
38
|
* draw a hairline separator above it (React Native has no :first-child).
|
|
@@ -10,12 +40,16 @@ export interface FrameProps extends ViewProps {
|
|
|
10
40
|
export interface FrameRowProps extends FrameProps {
|
|
11
41
|
divided?: boolean;
|
|
12
42
|
}
|
|
43
|
+
export interface FrameFooterProps extends FrameProps {
|
|
44
|
+
children?: ReactNode;
|
|
45
|
+
}
|
|
13
46
|
export declare const Frame: import("react").ForwardRefExoticComponent<FrameProps & import("react").RefAttributes<View>> & {
|
|
14
|
-
Header: import("react").ForwardRefExoticComponent<
|
|
15
|
-
Title: import("react").ForwardRefExoticComponent<TextProps & import("react").RefAttributes<
|
|
16
|
-
|
|
47
|
+
Header: import("react").ForwardRefExoticComponent<FrameHeaderProps & import("react").RefAttributes<View>>;
|
|
48
|
+
Title: import("react").ForwardRefExoticComponent<TextProps & import("react").RefAttributes<RNText>>;
|
|
49
|
+
Action: import("react").ForwardRefExoticComponent<FrameActionProps & import("react").RefAttributes<View>>;
|
|
50
|
+
Description: import("react").ForwardRefExoticComponent<TextProps & import("react").RefAttributes<RNText>>;
|
|
17
51
|
Panel: import("react").ForwardRefExoticComponent<FrameProps & import("react").RefAttributes<View>>;
|
|
18
52
|
Row: import("react").ForwardRefExoticComponent<FrameRowProps & import("react").RefAttributes<View>>;
|
|
19
|
-
Footer: import("react").ForwardRefExoticComponent<
|
|
53
|
+
Footer: import("react").ForwardRefExoticComponent<FrameFooterProps & import("react").RefAttributes<View>>;
|
|
20
54
|
};
|
|
21
55
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/frame/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/frame/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,0BAAuB,CAAC;AAG7D,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAWD,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AA+BD,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AA0CD;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAiBD,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAsBD,eAAO,MAAM,KAAK;;;;;;;;CAQhB,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* InputGroup — an Input with leading and/or trailing decorators.
|
|
3
|
+
*
|
|
4
|
+
* Adapted from: heroui-inc/heroui-native src/components/input-group/
|
|
5
|
+
* Prefix and Suffix are absolutely positioned and their measured widths become
|
|
6
|
+
* padding on the Input, so text never runs underneath a decorator regardless
|
|
7
|
+
* of how wide that decorator turns out to be.
|
|
8
|
+
*/
|
|
9
|
+
import { type ReactNode } from 'react';
|
|
10
|
+
import { View, type TextInput, type ViewProps } from 'react-native';
|
|
11
|
+
import { type InputProps } from '../input/index.js';
|
|
12
|
+
export interface InputGroupProps extends ViewProps {
|
|
13
|
+
className?: string;
|
|
14
|
+
/** Disables the input and dims both decorators. */
|
|
15
|
+
isDisabled?: boolean;
|
|
16
|
+
children?: ReactNode;
|
|
17
|
+
}
|
|
18
|
+
export interface InputGroupDecoratorProps extends ViewProps {
|
|
19
|
+
className?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Marks the decorator as presentation-only: touches fall through to the
|
|
22
|
+
* Input and screen readers skip it. Leave it off when the decorator holds
|
|
23
|
+
* something interactive, such as a show-password toggle.
|
|
24
|
+
*/
|
|
25
|
+
isDecorative?: boolean;
|
|
26
|
+
children?: ReactNode;
|
|
27
|
+
}
|
|
28
|
+
export type InputGroupInputProps = InputProps;
|
|
29
|
+
export declare const InputGroup: import("react").ForwardRefExoticComponent<InputGroupProps & import("react").RefAttributes<View>> & {
|
|
30
|
+
Prefix: import("react").ForwardRefExoticComponent<InputGroupDecoratorProps & import("react").RefAttributes<View>>;
|
|
31
|
+
Input: import("react").ForwardRefExoticComponent<InputProps & import("react").RefAttributes<TextInput>>;
|
|
32
|
+
Suffix: import("react").ForwardRefExoticComponent<InputGroupDecoratorProps & import("react").RefAttributes<View>>;
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/input-group/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EACL,IAAI,EAEJ,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,mBAAU,CAAC;AA6BlD,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAwBD,MAAM,WAAW,wBAAyB,SAAQ,SAAS;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAwCD,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC;AA4B9C,eAAO,MAAM,UAAU;;;;CAIrB,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Label — text that names a form field.
|
|
3
|
+
*
|
|
4
|
+
* Adapted from: heroui-inc/heroui-native src/components/label/ (root +
|
|
5
|
+
* Label.Text anatomy, string children auto-wrapping, the required asterisk,
|
|
6
|
+
* and the isInvalid / isDisabled recolouring).
|
|
7
|
+
*/
|
|
8
|
+
import { type ReactNode } from 'react';
|
|
9
|
+
import { View, type Text as RNText, type ViewProps } from 'react-native';
|
|
10
|
+
import { type TextProps } from '../../primitives/text.js';
|
|
11
|
+
export interface LabelProps extends ViewProps {
|
|
12
|
+
className?: string;
|
|
13
|
+
/** Appends an asterisk marking the field as required. */
|
|
14
|
+
isRequired?: boolean;
|
|
15
|
+
/** Recolours the label to signal a validation error. */
|
|
16
|
+
isInvalid?: boolean;
|
|
17
|
+
isDisabled?: boolean;
|
|
18
|
+
children?: ReactNode;
|
|
19
|
+
}
|
|
20
|
+
export interface LabelTextProps extends TextProps {
|
|
21
|
+
className?: string;
|
|
22
|
+
/** Classes for the required asterisk. */
|
|
23
|
+
asteriskClassName?: string;
|
|
24
|
+
}
|
|
25
|
+
export declare const Label: import("react").ForwardRefExoticComponent<LabelProps & import("react").RefAttributes<View>> & {
|
|
26
|
+
Text: import("react").ForwardRefExoticComponent<LabelTextProps & import("react").RefAttributes<RNText>>;
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/label/index.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzE,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,0BAAuB,CAAC;AAiC7D,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wDAAwD;IACxD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAqCD,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AA2BD,eAAO,MAAM,KAAK;;CAEhB,CAAC"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { View, type ViewProps } from 'react-native';
|
|
2
|
+
import { type VariantProps } from 'tailwind-variants';
|
|
3
|
+
declare const progressVariants: import("tailwind-variants").TVReturnType<{
|
|
4
|
+
color: {
|
|
5
|
+
primary: {
|
|
6
|
+
track: string;
|
|
7
|
+
indicator: string;
|
|
8
|
+
};
|
|
9
|
+
success: {
|
|
10
|
+
track: string;
|
|
11
|
+
indicator: string;
|
|
12
|
+
};
|
|
13
|
+
warning: {
|
|
14
|
+
track: string;
|
|
15
|
+
indicator: string;
|
|
16
|
+
};
|
|
17
|
+
destructive: {
|
|
18
|
+
track: string;
|
|
19
|
+
indicator: string;
|
|
20
|
+
};
|
|
21
|
+
info: {
|
|
22
|
+
track: string;
|
|
23
|
+
indicator: string;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
size: {
|
|
27
|
+
sm: {
|
|
28
|
+
track: string;
|
|
29
|
+
};
|
|
30
|
+
md: {
|
|
31
|
+
track: string;
|
|
32
|
+
};
|
|
33
|
+
lg: {
|
|
34
|
+
track: string;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
}, {
|
|
38
|
+
track: string;
|
|
39
|
+
indicator: string;
|
|
40
|
+
}, undefined, {
|
|
41
|
+
color: {
|
|
42
|
+
primary: {
|
|
43
|
+
track: string;
|
|
44
|
+
indicator: string;
|
|
45
|
+
};
|
|
46
|
+
success: {
|
|
47
|
+
track: string;
|
|
48
|
+
indicator: string;
|
|
49
|
+
};
|
|
50
|
+
warning: {
|
|
51
|
+
track: string;
|
|
52
|
+
indicator: string;
|
|
53
|
+
};
|
|
54
|
+
destructive: {
|
|
55
|
+
track: string;
|
|
56
|
+
indicator: string;
|
|
57
|
+
};
|
|
58
|
+
info: {
|
|
59
|
+
track: string;
|
|
60
|
+
indicator: string;
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
size: {
|
|
64
|
+
sm: {
|
|
65
|
+
track: string;
|
|
66
|
+
};
|
|
67
|
+
md: {
|
|
68
|
+
track: string;
|
|
69
|
+
};
|
|
70
|
+
lg: {
|
|
71
|
+
track: string;
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
}, {
|
|
75
|
+
track: string;
|
|
76
|
+
indicator: string;
|
|
77
|
+
}, import("tailwind-variants").TVReturnType<{
|
|
78
|
+
color: {
|
|
79
|
+
primary: {
|
|
80
|
+
track: string;
|
|
81
|
+
indicator: string;
|
|
82
|
+
};
|
|
83
|
+
success: {
|
|
84
|
+
track: string;
|
|
85
|
+
indicator: string;
|
|
86
|
+
};
|
|
87
|
+
warning: {
|
|
88
|
+
track: string;
|
|
89
|
+
indicator: string;
|
|
90
|
+
};
|
|
91
|
+
destructive: {
|
|
92
|
+
track: string;
|
|
93
|
+
indicator: string;
|
|
94
|
+
};
|
|
95
|
+
info: {
|
|
96
|
+
track: string;
|
|
97
|
+
indicator: string;
|
|
98
|
+
};
|
|
99
|
+
};
|
|
100
|
+
size: {
|
|
101
|
+
sm: {
|
|
102
|
+
track: string;
|
|
103
|
+
};
|
|
104
|
+
md: {
|
|
105
|
+
track: string;
|
|
106
|
+
};
|
|
107
|
+
lg: {
|
|
108
|
+
track: string;
|
|
109
|
+
};
|
|
110
|
+
};
|
|
111
|
+
}, {
|
|
112
|
+
track: string;
|
|
113
|
+
indicator: string;
|
|
114
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
115
|
+
type ProgressVariantProps = VariantProps<typeof progressVariants>;
|
|
116
|
+
export interface ProgressProps extends Omit<ViewProps, 'children'>, ProgressVariantProps {
|
|
117
|
+
className?: string;
|
|
118
|
+
/** Progress value, 0–100. Ignored when `indeterminate` is set. */
|
|
119
|
+
value?: number;
|
|
120
|
+
/** Show a looping animation for unknown-duration work. */
|
|
121
|
+
indeterminate?: boolean;
|
|
122
|
+
/** Extra classes for the moving indicator. */
|
|
123
|
+
indicatorClassName?: string;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Determinate or indeterminate progress bar. The fill width (determinate) and
|
|
127
|
+
* the sliding bar (indeterminate) are both driven on the UI thread, so updates
|
|
128
|
+
* never re-render past the value change itself.
|
|
129
|
+
*/
|
|
130
|
+
export declare const Progress: import("react").ForwardRefExoticComponent<ProgressProps & import("react").RefAttributes<View>>;
|
|
131
|
+
export {};
|
|
132
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/progress/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAA0B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAW5E,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAM1D,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAuBpB,CAAC;AAEH,KAAK,oBAAoB,GAAG,YAAY,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAElE,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EACjC,oBAAoB;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,8CAA8C;IAC9C,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AASD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,gGA2EpB,CAAC"}
|