fluent-styles 1.57.0 → 1.59.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/lib/commonjs/index.js +113 -63
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/input/index.js +2 -3
- package/lib/commonjs/input/index.js.map +1 -1
- package/lib/commonjs/shape/cycle.js +116 -0
- package/lib/commonjs/shape/cycle.js.map +1 -0
- package/lib/commonjs/spinner/index.js +279 -0
- package/lib/commonjs/spinner/index.js.map +1 -0
- package/lib/commonjs/utiles/validators.js +70 -1
- package/lib/commonjs/utiles/validators.js.map +1 -1
- package/lib/module/index.js +5 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/input/index.js +1 -0
- package/lib/module/input/index.js.map +1 -1
- package/lib/module/shape/cycle.js +112 -0
- package/lib/module/shape/cycle.js.map +1 -0
- package/lib/module/spinner/index.js +275 -0
- package/lib/module/spinner/index.js.map +1 -0
- package/lib/module/utiles/validators.js +70 -0
- package/lib/module/utiles/validators.js.map +1 -1
- package/lib/typescript/index.d.ts +5 -2
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/input/index.d.ts +1 -1
- package/lib/typescript/input/index.d.ts.map +1 -1
- package/lib/typescript/shape/cycle.d.ts +65 -0
- package/lib/typescript/shape/cycle.d.ts.map +1 -0
- package/lib/typescript/spinner/index.d.ts +75 -0
- package/lib/typescript/spinner/index.d.ts.map +1 -0
- package/lib/typescript/utiles/validators.d.ts +28 -0
- package/lib/typescript/utiles/validators.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +5 -2
- package/src/input/index.tsx +1 -0
- package/src/shape/cycle.tsx +134 -0
- package/src/spinner/index.tsx +369 -0
- package/src/utiles/validators.ts +88 -0
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { View } from 'react-native';
|
|
5
|
+
import { styled } from "../utiles/styled.js";
|
|
6
|
+
import { theme } from "../utiles/theme.js";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Cycle component - Circular container with size variants
|
|
10
|
+
*
|
|
11
|
+
* A specialized layout component that creates circular containers
|
|
12
|
+
* with predefined size variants. Uses borderRadius: 50% to create perfect circles.
|
|
13
|
+
*
|
|
14
|
+
* Size variants (width & height):
|
|
15
|
+
* - sm: 32px (small circles, icons)
|
|
16
|
+
* - md: 48px (medium circles, avatars)
|
|
17
|
+
* - lg: 64px (large circles, featured items)
|
|
18
|
+
* - xl: 80px (extra large circles, hero sections)
|
|
19
|
+
*/
|
|
20
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
21
|
+
/**
|
|
22
|
+
* Size definitions for cycle component
|
|
23
|
+
* Maps size variants to width/height values
|
|
24
|
+
*/
|
|
25
|
+
const sizes = {
|
|
26
|
+
sm: {
|
|
27
|
+
width: 32,
|
|
28
|
+
height: 32
|
|
29
|
+
},
|
|
30
|
+
md: {
|
|
31
|
+
width: 48,
|
|
32
|
+
height: 48
|
|
33
|
+
},
|
|
34
|
+
lg: {
|
|
35
|
+
width: 64,
|
|
36
|
+
height: 64
|
|
37
|
+
},
|
|
38
|
+
xl: {
|
|
39
|
+
width: 80,
|
|
40
|
+
height: 80
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Base Cycle component with size variants
|
|
46
|
+
* Circular container with centered content
|
|
47
|
+
* Default size: md (48px)
|
|
48
|
+
*/
|
|
49
|
+
const CycleBase = styled(View, {
|
|
50
|
+
base: {
|
|
51
|
+
borderRadius: 50,
|
|
52
|
+
borderWidth: 1,
|
|
53
|
+
borderColor: theme.colors.gray[200],
|
|
54
|
+
backgroundColor: theme.colors.gray[50],
|
|
55
|
+
justifyContent: 'center',
|
|
56
|
+
alignItems: 'center',
|
|
57
|
+
width: 48,
|
|
58
|
+
height: 48
|
|
59
|
+
},
|
|
60
|
+
variants: {
|
|
61
|
+
size: {
|
|
62
|
+
sm: sizes.sm,
|
|
63
|
+
md: sizes.md,
|
|
64
|
+
lg: sizes.lg,
|
|
65
|
+
xl: sizes.xl
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
/**
|
|
70
|
+
* Wrapper component for Cycle with size variants
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* // Small cycle with icon
|
|
74
|
+
* <StyledCycle size="sm">
|
|
75
|
+
* <Icon name="star" />
|
|
76
|
+
* </StyledCycle>
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* // Medium cycle (default) with avatar
|
|
80
|
+
* <StyledCycle>
|
|
81
|
+
* <Avatar uri={image} />
|
|
82
|
+
* </StyledCycle>
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* // Large cycle with custom styling
|
|
86
|
+
* <StyledCycle
|
|
87
|
+
* size="lg"
|
|
88
|
+
* backgroundColor={theme.colors.primary[500]}
|
|
89
|
+
* borderColor={theme.colors.primary[600]}
|
|
90
|
+
* >
|
|
91
|
+
* <Text fontSize={20} fontWeight="bold">C</Text>
|
|
92
|
+
* </StyledCycle>
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* // Extra large cycle with gradient background
|
|
96
|
+
* <StyledCycle size="xl">
|
|
97
|
+
* <LinearGradient colors={['#FF6B6B', '#FFD93D']}>
|
|
98
|
+
* <Text color="white">Logo</Text>
|
|
99
|
+
* </LinearGradient>
|
|
100
|
+
* </StyledCycle>
|
|
101
|
+
*/
|
|
102
|
+
const StyledCycle = /*#__PURE__*/React.forwardRef(({
|
|
103
|
+
children,
|
|
104
|
+
...rest
|
|
105
|
+
}, ref) => /*#__PURE__*/_jsx(CycleBase, {
|
|
106
|
+
ref: ref,
|
|
107
|
+
...rest,
|
|
108
|
+
children: children
|
|
109
|
+
}));
|
|
110
|
+
StyledCycle.displayName = 'StyledCycle';
|
|
111
|
+
export { StyledCycle, CycleBase };
|
|
112
|
+
//# sourceMappingURL=cycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","View","styled","theme","jsx","_jsx","sizes","sm","width","height","md","lg","xl","CycleBase","base","borderRadius","borderWidth","borderColor","colors","gray","backgroundColor","justifyContent","alignItems","variants","size","StyledCycle","forwardRef","children","rest","ref","displayName"],"sourceRoot":"../../../src","sources":["shape/cycle.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SACEC,IAAI,QAGC,cAAc;AACrB,SAASC,MAAM,QAAQ,qBAAkB;AACzC,SAASC,KAAK,QAAQ,oBAAiB;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAXA,SAAAC,GAAA,IAAAC,IAAA;AAqBA;AACA;AACA;AACA;AACA,MAAMC,KAAK,GAAG;EACZC,EAAE,EAAE;IACFC,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAc;EACdC,EAAE,EAAE;IACFF,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAc;EACdE,EAAE,EAAE;IACFH,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAc;EACdG,EAAE,EAAE;IACFJ,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMI,SAAS,GAAGX,MAAM,CAAsBD,IAAI,EAAE;EAClDa,IAAI,EAAE;IACJC,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE,CAAC;IACdC,WAAW,EAAEd,KAAK,CAACe,MAAM,CAACC,IAAI,CAAC,GAAG,CAAC;IACnCC,eAAe,EAAEjB,KAAK,CAACe,MAAM,CAACC,IAAI,CAAC,EAAE,CAAC;IACtCE,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBd,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAc;EACdc,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJjB,EAAE,EAAED,KAAK,CAACC,EAAE;MACZG,EAAE,EAAEJ,KAAK,CAACI,EAAE;MACZC,EAAE,EAAEL,KAAK,CAACK,EAAE;MACZC,EAAE,EAAEN,KAAK,CAACM;IACZ;EACF;AACF,CAAC,CAAC;AAMF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMa,WAAW,gBAAGzB,KAAK,CAAC0B,UAAU,CAClC,CACE;EACEC,QAAQ;EACR,GAAGC;AACL,CAAC,EACDC,GAAG,kBAEHxB,IAAA,CAACQ,SAAS;EAACgB,GAAG,EAAEA,GAAI;EAAA,GAAKD,IAAI;EAAAD,QAAA,EAC1BA;AAAQ,CACA,CAEf,CAAC;AAEDF,WAAW,CAACK,WAAW,GAAG,aAAa;AAEvC,SAASL,WAAW,EAAEZ,SAAS","ignoreList":[]}
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React, { forwardRef } from 'react';
|
|
4
|
+
import { ActivityIndicator } from 'react-native';
|
|
5
|
+
import { theme } from "../utiles/theme.js";
|
|
6
|
+
import { styled } from "../utiles/styled.js";
|
|
7
|
+
import { YStack, XStack } from "../stack/index.js";
|
|
8
|
+
import { StyledText } from "../text/index.js";
|
|
9
|
+
import { StyledButton } from "../button/index.js";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Props for Spinner component
|
|
13
|
+
*/
|
|
14
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
15
|
+
/**
|
|
16
|
+
* Size configuration for Spinner
|
|
17
|
+
*/
|
|
18
|
+
const sizeConfig = {
|
|
19
|
+
small: 30,
|
|
20
|
+
medium: 50,
|
|
21
|
+
large: 80
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Variant configuration for Spinner
|
|
26
|
+
*/
|
|
27
|
+
const variantConfig = {
|
|
28
|
+
default: {
|
|
29
|
+
color: theme.colors.gray[400],
|
|
30
|
+
label: 'default'
|
|
31
|
+
},
|
|
32
|
+
primary: {
|
|
33
|
+
color: theme.colors.blue[500],
|
|
34
|
+
label: 'primary'
|
|
35
|
+
},
|
|
36
|
+
success: {
|
|
37
|
+
color: theme.colors.green[500],
|
|
38
|
+
label: 'success'
|
|
39
|
+
},
|
|
40
|
+
warning: {
|
|
41
|
+
color: theme.colors.amber[500],
|
|
42
|
+
label: 'warning'
|
|
43
|
+
},
|
|
44
|
+
danger: {
|
|
45
|
+
color: theme.colors.red[500],
|
|
46
|
+
label: 'danger'
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Base styled ActivityIndicator
|
|
52
|
+
*/
|
|
53
|
+
const StyledActivityIndicator = styled(ActivityIndicator, {
|
|
54
|
+
base: {
|
|
55
|
+
color: theme.colors.gray[400]
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Spinner: Professional loading indicator component
|
|
61
|
+
*
|
|
62
|
+
* Features:
|
|
63
|
+
* - Multiple size options (small, medium, large, custom)
|
|
64
|
+
* - 5 color variants (default, primary, success, warning, danger)
|
|
65
|
+
* - Custom color support
|
|
66
|
+
* - Overlay mode for full-screen loading
|
|
67
|
+
* - Optional label text
|
|
68
|
+
* - Theme integration
|
|
69
|
+
* - Accessibility support
|
|
70
|
+
*/
|
|
71
|
+
const StyledSpinner = /*#__PURE__*/forwardRef(({
|
|
72
|
+
size = 'medium',
|
|
73
|
+
variant = 'primary',
|
|
74
|
+
color,
|
|
75
|
+
overlay = false,
|
|
76
|
+
overlayColor = 'rgba(0, 0, 0, 0.3)',
|
|
77
|
+
label,
|
|
78
|
+
labelColor,
|
|
79
|
+
labelSize = 14,
|
|
80
|
+
accessibilityLabel = 'Loading',
|
|
81
|
+
...rest
|
|
82
|
+
}, ref) => {
|
|
83
|
+
// Determine size
|
|
84
|
+
const finalSize = typeof size === 'number' ? size : sizeConfig[size];
|
|
85
|
+
|
|
86
|
+
// Determine color
|
|
87
|
+
const variantConfig_value = variantConfig[variant];
|
|
88
|
+
const finalColor = color || variantConfig_value.color;
|
|
89
|
+
const spinnerElement = /*#__PURE__*/_jsx(StyledActivityIndicator, {
|
|
90
|
+
ref: ref,
|
|
91
|
+
size: finalSize,
|
|
92
|
+
color: finalColor,
|
|
93
|
+
accessibilityLabel: accessibilityLabel,
|
|
94
|
+
accessible: true,
|
|
95
|
+
...rest
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
// If no overlay, return basic spinner
|
|
99
|
+
if (!overlay) {
|
|
100
|
+
if (!label) {
|
|
101
|
+
return spinnerElement;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
// Spinner with label
|
|
105
|
+
return /*#__PURE__*/_jsxs(YStack, {
|
|
106
|
+
alignItems: "center",
|
|
107
|
+
gap: 12,
|
|
108
|
+
children: [spinnerElement, label && /*#__PURE__*/_jsx(StyledText, {
|
|
109
|
+
fontSize: labelSize,
|
|
110
|
+
color: labelColor || theme.colors.gray[600],
|
|
111
|
+
numberOfLines: 1,
|
|
112
|
+
children: label
|
|
113
|
+
})]
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
// Overlay mode
|
|
118
|
+
return /*#__PURE__*/_jsx(YStack, {
|
|
119
|
+
position: "absolute",
|
|
120
|
+
top: 0,
|
|
121
|
+
left: 0,
|
|
122
|
+
right: 0,
|
|
123
|
+
bottom: 0,
|
|
124
|
+
backgroundColor: overlayColor,
|
|
125
|
+
justifyContent: "center",
|
|
126
|
+
alignItems: "center",
|
|
127
|
+
zIndex: 9999,
|
|
128
|
+
children: /*#__PURE__*/_jsxs(YStack, {
|
|
129
|
+
alignItems: "center",
|
|
130
|
+
gap: 12,
|
|
131
|
+
children: [spinnerElement, label && /*#__PURE__*/_jsx(StyledText, {
|
|
132
|
+
fontSize: labelSize,
|
|
133
|
+
color: labelColor || theme.colors.white[500],
|
|
134
|
+
numberOfLines: 1,
|
|
135
|
+
children: label
|
|
136
|
+
})]
|
|
137
|
+
})
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
StyledSpinner.displayName = 'StyledSpinner';
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Props for SpinnerContainer - Full-screen loading overlay with backdrop
|
|
144
|
+
*/
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* SpinnerContainer: Full-screen loading container with backdrop
|
|
148
|
+
*
|
|
149
|
+
* Use for: Page loading, data fetching, async operations
|
|
150
|
+
*/
|
|
151
|
+
const SpinnerContainer = /*#__PURE__*/forwardRef(({
|
|
152
|
+
isVisible = true,
|
|
153
|
+
size = 'large',
|
|
154
|
+
variant = 'primary',
|
|
155
|
+
color,
|
|
156
|
+
backdropColor = 'rgba(0, 0, 0, 0.5)',
|
|
157
|
+
message,
|
|
158
|
+
labelColor,
|
|
159
|
+
labelSize = 14,
|
|
160
|
+
onBackdropPress,
|
|
161
|
+
...rest
|
|
162
|
+
}, ref) => {
|
|
163
|
+
if (!isVisible) return null;
|
|
164
|
+
|
|
165
|
+
// Determine size
|
|
166
|
+
const finalSize = typeof size === 'number' ? size : sizeConfig[size];
|
|
167
|
+
|
|
168
|
+
// Determine color
|
|
169
|
+
const variantConfig_value = variantConfig[variant];
|
|
170
|
+
const finalColor = color || variantConfig_value.color;
|
|
171
|
+
const spinnerContent = /*#__PURE__*/_jsxs(YStack, {
|
|
172
|
+
alignItems: "center",
|
|
173
|
+
gap: 20,
|
|
174
|
+
children: [/*#__PURE__*/_jsx(StyledActivityIndicator, {
|
|
175
|
+
ref: ref,
|
|
176
|
+
size: finalSize,
|
|
177
|
+
color: finalColor,
|
|
178
|
+
accessible: true,
|
|
179
|
+
accessibilityLabel: "Loading",
|
|
180
|
+
...rest
|
|
181
|
+
}), message && /*#__PURE__*/_jsx(StyledText, {
|
|
182
|
+
fontSize: labelSize,
|
|
183
|
+
color: labelColor || theme.colors.white[500],
|
|
184
|
+
numberOfLines: 2,
|
|
185
|
+
textAlign: "center",
|
|
186
|
+
children: message
|
|
187
|
+
})]
|
|
188
|
+
});
|
|
189
|
+
if (!onBackdropPress) {
|
|
190
|
+
return /*#__PURE__*/_jsx(YStack, {
|
|
191
|
+
position: "absolute",
|
|
192
|
+
top: 0,
|
|
193
|
+
left: 0,
|
|
194
|
+
right: 0,
|
|
195
|
+
bottom: 0,
|
|
196
|
+
backgroundColor: backdropColor,
|
|
197
|
+
justifyContent: "center",
|
|
198
|
+
alignItems: "center",
|
|
199
|
+
zIndex: 9999,
|
|
200
|
+
children: spinnerContent
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
return /*#__PURE__*/_jsx(StyledButton, {
|
|
204
|
+
link: true,
|
|
205
|
+
onPress: onBackdropPress,
|
|
206
|
+
position: "absolute",
|
|
207
|
+
top: 0,
|
|
208
|
+
left: 0,
|
|
209
|
+
right: 0,
|
|
210
|
+
bottom: 0,
|
|
211
|
+
backgroundColor: backdropColor,
|
|
212
|
+
justifyContent: "center",
|
|
213
|
+
alignItems: "center",
|
|
214
|
+
zIndex: 9999,
|
|
215
|
+
borderRadius: 0,
|
|
216
|
+
borderWidth: 0,
|
|
217
|
+
children: spinnerContent
|
|
218
|
+
});
|
|
219
|
+
});
|
|
220
|
+
SpinnerContainer.displayName = 'SpinnerContainer';
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* Props for InlineSpinner - Spinner with text in a row
|
|
224
|
+
*/
|
|
225
|
+
|
|
226
|
+
/**
|
|
227
|
+
* InlineSpinner: Spinner with text in flexible direction
|
|
228
|
+
*
|
|
229
|
+
* Use for: Button loading states, inline operations, compact loading indicators
|
|
230
|
+
*/
|
|
231
|
+
const InlineSpinner = /*#__PURE__*/forwardRef(({
|
|
232
|
+
size = 'small',
|
|
233
|
+
variant = 'primary',
|
|
234
|
+
color,
|
|
235
|
+
text,
|
|
236
|
+
labelColor,
|
|
237
|
+
labelSize = 12,
|
|
238
|
+
direction = 'row',
|
|
239
|
+
gap = 8,
|
|
240
|
+
accessibilityLabel = 'Loading',
|
|
241
|
+
...rest
|
|
242
|
+
}, ref) => {
|
|
243
|
+
// Determine size
|
|
244
|
+
const finalSize = typeof size === 'number' ? size : sizeConfig[size];
|
|
245
|
+
|
|
246
|
+
// Determine color
|
|
247
|
+
const variantConfig_value = variantConfig[variant];
|
|
248
|
+
const finalColor = color || variantConfig_value.color;
|
|
249
|
+
const StackComponent = direction === 'row' ? XStack : YStack;
|
|
250
|
+
return /*#__PURE__*/_jsxs(StackComponent, {
|
|
251
|
+
gap: gap,
|
|
252
|
+
alignItems: "center",
|
|
253
|
+
children: [/*#__PURE__*/_jsx(StyledActivityIndicator, {
|
|
254
|
+
ref: ref,
|
|
255
|
+
size: finalSize,
|
|
256
|
+
color: finalColor,
|
|
257
|
+
accessible: true,
|
|
258
|
+
accessibilityLabel: accessibilityLabel,
|
|
259
|
+
...rest
|
|
260
|
+
}), text && /*#__PURE__*/_jsx(StyledText, {
|
|
261
|
+
fontSize: labelSize,
|
|
262
|
+
color: labelColor || theme.colors.gray[600],
|
|
263
|
+
numberOfLines: 1,
|
|
264
|
+
children: text
|
|
265
|
+
})]
|
|
266
|
+
});
|
|
267
|
+
});
|
|
268
|
+
InlineSpinner.displayName = 'InlineSpinner';
|
|
269
|
+
|
|
270
|
+
/**
|
|
271
|
+
* Exports
|
|
272
|
+
*/
|
|
273
|
+
export { StyledSpinner, SpinnerContainer, InlineSpinner, sizeConfig, variantConfig };
|
|
274
|
+
export default StyledSpinner;
|
|
275
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","forwardRef","ActivityIndicator","theme","styled","YStack","XStack","StyledText","StyledButton","jsx","_jsx","jsxs","_jsxs","sizeConfig","small","medium","large","variantConfig","default","color","colors","gray","label","primary","blue","success","green","warning","amber","danger","red","StyledActivityIndicator","base","StyledSpinner","size","variant","overlay","overlayColor","labelColor","labelSize","accessibilityLabel","rest","ref","finalSize","variantConfig_value","finalColor","spinnerElement","accessible","alignItems","gap","children","fontSize","numberOfLines","position","top","left","right","bottom","backgroundColor","justifyContent","zIndex","white","displayName","SpinnerContainer","isVisible","backdropColor","message","onBackdropPress","spinnerContent","textAlign","link","onPress","borderRadius","borderWidth","InlineSpinner","text","direction","StackComponent"],"sourceRoot":"../../../src","sources":["spinner/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -21,4 +21,74 @@ export const isValidNumber = value => {
|
|
|
21
21
|
export const isValidString = value => {
|
|
22
22
|
return typeof value === "string" && value.trim().length > 0;
|
|
23
23
|
};
|
|
24
|
+
|
|
25
|
+
// Define the structure for a single rule
|
|
26
|
+
|
|
27
|
+
// Define the structure for the rules object used in validation
|
|
28
|
+
|
|
29
|
+
// Define the structure for the values object used in validation
|
|
30
|
+
|
|
31
|
+
// Define the structure for the errors object in the validation response
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Validates a value against provided rules.
|
|
35
|
+
* @param value - The value to validate.
|
|
36
|
+
* @param rules - The array of validation rules.
|
|
37
|
+
* @returns The error message if the value is invalid, otherwise undefined.
|
|
38
|
+
*/
|
|
39
|
+
const validateField = (value, rules, fields = {}) => {
|
|
40
|
+
for (const rule of rules) {
|
|
41
|
+
// Explicit null or undefined check
|
|
42
|
+
if (value === null || value === undefined) {
|
|
43
|
+
return rule.message; // Null/undefined fails required validation
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// Array validation
|
|
47
|
+
if (rule.array && Array.isArray(value) && value.length === 0) {
|
|
48
|
+
return rule.message;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// Pattern validation
|
|
52
|
+
if (rule.pattern && !rule.pattern.test(value)) {
|
|
53
|
+
return rule.message;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// Custom validation logic
|
|
57
|
+
if (rule.validate) {
|
|
58
|
+
const customMessage = rule.validate(value, fields);
|
|
59
|
+
if (customMessage) {
|
|
60
|
+
return customMessage;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return undefined; // No errors found
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Validates a set of values against a set of field rules.
|
|
69
|
+
* @param values - The object of field values.
|
|
70
|
+
* @param rules - The object of field rules.
|
|
71
|
+
* @returns An object containing a boolean indicating if there are errors, and an object of errors.
|
|
72
|
+
*/
|
|
73
|
+
const validate = (values, rules) => {
|
|
74
|
+
const errors = {};
|
|
75
|
+
let hasError = false;
|
|
76
|
+
for (const field in rules) {
|
|
77
|
+
const fieldRules = rules[field];
|
|
78
|
+
const value = values[field] ?? null; // Safely access values[field]
|
|
79
|
+
const error = validateField(value, fieldRules, values); // Pass `values` for cross-field validation
|
|
80
|
+
|
|
81
|
+
if (error) {
|
|
82
|
+
hasError = true;
|
|
83
|
+
errors[field] = {
|
|
84
|
+
message: error
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return {
|
|
89
|
+
hasError,
|
|
90
|
+
errors
|
|
91
|
+
};
|
|
92
|
+
};
|
|
93
|
+
export { validate };
|
|
24
94
|
//# sourceMappingURL=validators.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isValidColor","value","test","isValidNumber","isFinite","isValidString","trim","length"],"sourceRoot":"../../../src","sources":["utiles/validators.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA,OAAO,MAAMA,YAAY,GAAIC,KAAa,IAAc;EACtD,OAAO,2CAA2C,CAACC,IAAI,CAACD,KAAK,CAAC;AAChE,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAME,aAAa,GAAIF,KAAc,IAAsB;EAChE,OAAO,OAAOA,KAAK,KAAK,QAAQ,IAAIG,QAAQ,CAACH,KAAK,CAAC;AACrD,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMI,aAAa,GAAIJ,KAAc,IAAsB;EAChE,OAAO,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,CAACK,IAAI,CAAC,CAAC,CAACC,MAAM,GAAG,CAAC;AAC7D,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["isValidColor","value","test","isValidNumber","isFinite","isValidString","trim","length","validateField","rules","fields","rule","undefined","message","array","Array","isArray","pattern","validate","customMessage","values","errors","hasError","field","fieldRules","error"],"sourceRoot":"../../../src","sources":["utiles/validators.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA,OAAO,MAAMA,YAAY,GAAIC,KAAa,IAAc;EACtD,OAAO,2CAA2C,CAACC,IAAI,CAACD,KAAK,CAAC;AAChE,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAME,aAAa,GAAIF,KAAc,IAAsB;EAChE,OAAO,OAAOA,KAAK,KAAK,QAAQ,IAAIG,QAAQ,CAACH,KAAK,CAAC;AACrD,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMI,aAAa,GAAIJ,KAAc,IAAsB;EAChE,OAAO,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,CAACK,IAAI,CAAC,CAAC,CAACC,MAAM,GAAG,CAAC;AAC7D,CAAC;;AAED;;AAQE;;AAKA;;AAKA;;AAKA;AACF;AACA;AACA;AACA;AACA;AACE,MAAMC,aAAa,GAAGA,CAACP,KAAU,EAAEQ,KAAa,EAAEC,MAA2B,GAAG,CAAC,CAAC,KAAyB;EACzG,KAAK,MAAMC,IAAI,IAAIF,KAAK,EAAE;IACxB;IACA,IAAIR,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKW,SAAS,EAAE;MACzC,OAAOD,IAAI,CAACE,OAAO,CAAC,CAAC;IACvB;;IAEA;IACA,IAAIF,IAAI,CAACG,KAAK,IAAIC,KAAK,CAACC,OAAO,CAACf,KAAK,CAAC,IAAIA,KAAK,CAACM,MAAM,KAAK,CAAC,EAAE;MAC5D,OAAOI,IAAI,CAACE,OAAO;IACrB;;IAEA;IACA,IAAIF,IAAI,CAACM,OAAO,IAAI,CAACN,IAAI,CAACM,OAAO,CAACf,IAAI,CAACD,KAAK,CAAC,EAAE;MAC7C,OAAOU,IAAI,CAACE,OAAO;IACrB;;IAEA;IACA,IAAIF,IAAI,CAACO,QAAQ,EAAE;MACjB,MAAMC,aAAa,GAAGR,IAAI,CAACO,QAAQ,CAACjB,KAAK,EAAES,MAAM,CAAC;MAClD,IAAIS,aAAa,EAAE;QACjB,OAAOA,aAAa;MACtB;IACF;EACF;EAEA,OAAOP,SAAS,CAAC,CAAC;AACpB,CAAC;;AAGD;AACF;AACA;AACA;AACA;AACA;AACE,MAAMM,QAAQ,GAAGA,CAACE,MAAc,EAAEX,KAAY,KAA4C;EACxF,MAAMY,MAAc,GAAG,CAAC,CAAC;EACzB,IAAIC,QAAQ,GAAG,KAAK;EAEpB,KAAK,MAAMC,KAAK,IAAId,KAAK,EAAE;IACzB,MAAMe,UAAU,GAAGf,KAAK,CAACc,KAAK,CAAC;IAC/B,MAAMtB,KAAK,GAAGmB,MAAM,CAACG,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC;IACrC,MAAME,KAAK,GAAGjB,aAAa,CAACP,KAAK,EAAEuB,UAAU,EAAEJ,MAAM,CAAC,CAAC,CAAC;;IAExD,IAAIK,KAAK,EAAE;MACTH,QAAQ,GAAG,IAAI;MACfD,MAAM,CAACE,KAAK,CAAC,GAAG;QAAEV,OAAO,EAAEY;MAAM,CAAC;IACpC;EACF;EAEA,OAAO;IACLH,QAAQ;IACRD;EACF,CAAC;AACH,CAAC;AAED,SAASH,QAAQ","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { PopoverMode, PopoverPlacement } from 'react-native-popover-view';
|
|
2
2
|
export { theme, lightColors, darkColors, palettes, fontStyles, } from './utiles/theme';
|
|
3
3
|
export { styled } from './utiles/styled';
|
|
4
|
-
export { Stack, type StackProps } from './stack';
|
|
4
|
+
export { Stack, XStack, YStack, type StackProps } from './stack';
|
|
5
5
|
export { StyledText, type StyledTextProps } from './text';
|
|
6
6
|
export { StyledSafeAreaProvider, type StyledSafeAreaProviderProps } from './safeAreaProvider';
|
|
7
7
|
export { StyledSafeAreaView, type StyledSafeAreaViewProps } from './safeAreaView';
|
|
@@ -17,7 +17,6 @@ export { StyledImage, StyledImageBackground, type StyledImageProps, type StyledI
|
|
|
17
17
|
export { StyledPressable, type StyledPressableProps } from './pressable';
|
|
18
18
|
export { StyledButton, type StyledButtonProps } from './button';
|
|
19
19
|
export { StyledDivider, type DividerProps } from './divider';
|
|
20
|
-
export * from './input';
|
|
21
20
|
export { StyledCheckBox, type StyledCheckBoxProps } from './checkBox';
|
|
22
21
|
export { StyledBadge, type StyledBadgeProps } from './badge';
|
|
23
22
|
export { BadgeWithIcon, type BadgeWithIconProps } from './badge';
|
|
@@ -54,4 +53,8 @@ export * from './skeleton';
|
|
|
54
53
|
export * from './emptyState';
|
|
55
54
|
export * from './searchBar';
|
|
56
55
|
export * from './dialog';
|
|
56
|
+
export * from './utiles/validators';
|
|
57
|
+
export * from './spinner';
|
|
58
|
+
export * from './input';
|
|
59
|
+
export * from './shape/cycle';
|
|
57
60
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,GAAG,MAAM,gBAAgB,CAAA;AACtF,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -85,5 +85,5 @@ export interface StyledTextInputHandle extends StyledTextInputProps {
|
|
|
85
85
|
isFocused: () => boolean;
|
|
86
86
|
}
|
|
87
87
|
export declare const StyledTextInput: React.ForwardRefExoticComponent<StyledTextInputProps & React.RefAttributes<any>>;
|
|
88
|
-
export {};
|
|
88
|
+
export { StyledTextInput as StyledInput };
|
|
89
89
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/input/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAA;AACd,OAAO,EAML,cAAc,EAGf,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAGV,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAA;AAMrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,MAAM,MAAM,SAAS,GAAO,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAC9C,MAAM,MAAM,YAAY,GAAI,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,OAAO,CAAA;AAExE,MAAM,MAAM,UAAU,GAAG;IACvB,4CAA4C;IAC5C,IAAI,CAAC,EAAM,MAAM,CAAA;IACjB,kDAAkD;IAClD,IAAI,CAAC,EAAM,KAAK,CAAC,SAAS,CAAA;IAC1B,oEAAoE;IACpE,EAAE,CAAC,EAAQ,MAAM,CAAA;IACjB,2CAA2C;IAC3C,KAAK,CAAC,EAAK,MAAM,CAAA;IACjB,6CAA6C;IAC7C,OAAO,CAAC,EAAG,MAAM,IAAI,CAAA;CACtB,CAAA;AAED,KAAK,kBAAkB,GAAI,cAAc,GAAG,SAAS,CAAC;AAEtD,MAAM,WAAW,oBACf,SAAQ,kBAAkB;IAG1B,KAAK,CAAC,EAAc,MAAM,CAAA;IAC1B,UAAU,CAAC,EAAS,eAAe,CAAA;IACnC,+CAA+C;IAC/C,QAAQ,CAAC,EAAW,OAAO,CAAA;IAC3B,wEAAwE;IACxE,UAAU,CAAC,EAAS,MAAM,CAAA;IAC1B,WAAW,CAAC,EAAQ,eAAe,CAAA;IACnC,+DAA+D;IAC/D,YAAY,CAAC,EAAO,MAAM,CAAA;IAC1B,UAAU,CAAC,EAAS,eAAe,CAAA;IACnC,wEAAwE;IACxE,KAAK,CAAC,EAAc,OAAO,CAAA;IAG3B;;;OAGG;IACH,WAAW,CAAC,EAAQ,OAAO,CAAA;IAG3B,qEAAqE;IACrE,QAAQ,CAAC,EAAW,KAAK,CAAC,SAAS,CAAA;IACnC,wEAAwE;IACxE,SAAS,CAAC,EAAU,KAAK,CAAC,SAAS,CAAA;IACnC;;;OAGG;IACH,SAAS,CAAC,EAAU,UAAU,CAAA;IAC9B;;;OAGG;IACH,UAAU,CAAC,EAAS,UAAU,CAAA;IAG9B,uEAAuE;IACvE,SAAS,CAAC,EAAU,OAAO,CAAA;IAG3B,4EAA4E;IAC5E,OAAO,CAAC,EAAY,OAAO,CAAA;IAG3B;;;;;;OAMG;IACH,OAAO,CAAC,EAAY,YAAY,CAAA;IAEhC,4CAA4C;IAC5C,IAAI,CAAC,EAAe,SAAS,CAAA;IAE7B,sEAAsE;IACtE,WAAW,CAAC,EAAQ,MAAM,CAAA;IAE1B,gEAAgE;IAChE,UAAU,CAAC,EAAS,MAAM,CAAA;IAG1B;;;OAGG;IACH,UAAU,CAAC,EAAS,OAAO,CAAA;IAG3B,cAAc,CAAC,EAAK,SAAS,CAAA;IAC7B,cAAc,CAAC,EAAK,SAAS,CAAA;IAC7B,UAAU,CAAC,EAAS,SAAS,CAAA;IAG7B,QAAQ,CAAC,EAAW,MAAM,CAAA;IAC1B,UAAU,CAAC,EAAS,SAAS,CAAC,YAAY,CAAC,CAAA;CAE5C;AAkCD,MAAM,WAAW,qBAAsB,SAAQ,oBAAoB;IACjE,KAAK,EAAO,MAAM,IAAI,CAAA;IACtB,IAAI,EAAQ,MAAM,IAAI,CAAA;IACtB,KAAK,EAAO,MAAM,IAAI,CAAA;IACtB,SAAS,EAAG,MAAM,OAAO,CAAA;CAC1B;AAuKD,eAAO,MAAM,eAAe,kFAyR3B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/input/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAA;AACd,OAAO,EAML,cAAc,EAGf,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAGV,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAA;AAMrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,MAAM,MAAM,SAAS,GAAO,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAC9C,MAAM,MAAM,YAAY,GAAI,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,OAAO,CAAA;AAExE,MAAM,MAAM,UAAU,GAAG;IACvB,4CAA4C;IAC5C,IAAI,CAAC,EAAM,MAAM,CAAA;IACjB,kDAAkD;IAClD,IAAI,CAAC,EAAM,KAAK,CAAC,SAAS,CAAA;IAC1B,oEAAoE;IACpE,EAAE,CAAC,EAAQ,MAAM,CAAA;IACjB,2CAA2C;IAC3C,KAAK,CAAC,EAAK,MAAM,CAAA;IACjB,6CAA6C;IAC7C,OAAO,CAAC,EAAG,MAAM,IAAI,CAAA;CACtB,CAAA;AAED,KAAK,kBAAkB,GAAI,cAAc,GAAG,SAAS,CAAC;AAEtD,MAAM,WAAW,oBACf,SAAQ,kBAAkB;IAG1B,KAAK,CAAC,EAAc,MAAM,CAAA;IAC1B,UAAU,CAAC,EAAS,eAAe,CAAA;IACnC,+CAA+C;IAC/C,QAAQ,CAAC,EAAW,OAAO,CAAA;IAC3B,wEAAwE;IACxE,UAAU,CAAC,EAAS,MAAM,CAAA;IAC1B,WAAW,CAAC,EAAQ,eAAe,CAAA;IACnC,+DAA+D;IAC/D,YAAY,CAAC,EAAO,MAAM,CAAA;IAC1B,UAAU,CAAC,EAAS,eAAe,CAAA;IACnC,wEAAwE;IACxE,KAAK,CAAC,EAAc,OAAO,CAAA;IAG3B;;;OAGG;IACH,WAAW,CAAC,EAAQ,OAAO,CAAA;IAG3B,qEAAqE;IACrE,QAAQ,CAAC,EAAW,KAAK,CAAC,SAAS,CAAA;IACnC,wEAAwE;IACxE,SAAS,CAAC,EAAU,KAAK,CAAC,SAAS,CAAA;IACnC;;;OAGG;IACH,SAAS,CAAC,EAAU,UAAU,CAAA;IAC9B;;;OAGG;IACH,UAAU,CAAC,EAAS,UAAU,CAAA;IAG9B,uEAAuE;IACvE,SAAS,CAAC,EAAU,OAAO,CAAA;IAG3B,4EAA4E;IAC5E,OAAO,CAAC,EAAY,OAAO,CAAA;IAG3B;;;;;;OAMG;IACH,OAAO,CAAC,EAAY,YAAY,CAAA;IAEhC,4CAA4C;IAC5C,IAAI,CAAC,EAAe,SAAS,CAAA;IAE7B,sEAAsE;IACtE,WAAW,CAAC,EAAQ,MAAM,CAAA;IAE1B,gEAAgE;IAChE,UAAU,CAAC,EAAS,MAAM,CAAA;IAG1B;;;OAGG;IACH,UAAU,CAAC,EAAS,OAAO,CAAA;IAG3B,cAAc,CAAC,EAAK,SAAS,CAAA;IAC7B,cAAc,CAAC,EAAK,SAAS,CAAA;IAC7B,UAAU,CAAC,EAAS,SAAS,CAAA;IAG7B,QAAQ,CAAC,EAAW,MAAM,CAAA;IAC1B,UAAU,CAAC,EAAS,SAAS,CAAC,YAAY,CAAC,CAAA;CAE5C;AAkCD,MAAM,WAAW,qBAAsB,SAAQ,oBAAoB;IACjE,KAAK,EAAO,MAAM,IAAI,CAAA;IACtB,IAAI,EAAQ,MAAM,IAAI,CAAA;IACtB,KAAK,EAAO,MAAM,IAAI,CAAA;IACtB,SAAS,EAAG,MAAM,OAAO,CAAA;CAC1B;AAuKD,eAAO,MAAM,eAAe,kFAyR3B,CAAA;AAGD,OAAO,EAAE,eAAe,IAAI,WAAW,EAAE,CAAA"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { View, ViewProps, ViewStyle } from 'react-native';
|
|
3
|
+
/**
|
|
4
|
+
* Cycle component - Circular container with size variants
|
|
5
|
+
*
|
|
6
|
+
* A specialized layout component that creates circular containers
|
|
7
|
+
* with predefined size variants. Uses borderRadius: 50% to create perfect circles.
|
|
8
|
+
*
|
|
9
|
+
* Size variants (width & height):
|
|
10
|
+
* - sm: 32px (small circles, icons)
|
|
11
|
+
* - md: 48px (medium circles, avatars)
|
|
12
|
+
* - lg: 64px (large circles, featured items)
|
|
13
|
+
* - xl: 80px (extra large circles, hero sections)
|
|
14
|
+
*/
|
|
15
|
+
type SizeVariant = 'sm' | 'md' | 'lg' | 'xl';
|
|
16
|
+
type CycleVariants = {
|
|
17
|
+
size?: SizeVariant;
|
|
18
|
+
};
|
|
19
|
+
type CycleComponentProps = CycleVariants & ViewProps & ViewStyle;
|
|
20
|
+
/**
|
|
21
|
+
* Base Cycle component with size variants
|
|
22
|
+
* Circular container with centered content
|
|
23
|
+
* Default size: md (48px)
|
|
24
|
+
*/
|
|
25
|
+
declare const CycleBase: React.ForwardRefExoticComponent<CycleVariants & ViewProps & ViewStyle & React.RefAttributes<any>>;
|
|
26
|
+
interface StyledCycleProps extends CycleComponentProps {
|
|
27
|
+
children?: React.ReactNode;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Wrapper component for Cycle with size variants
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* // Small cycle with icon
|
|
34
|
+
* <StyledCycle size="sm">
|
|
35
|
+
* <Icon name="star" />
|
|
36
|
+
* </StyledCycle>
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* // Medium cycle (default) with avatar
|
|
40
|
+
* <StyledCycle>
|
|
41
|
+
* <Avatar uri={image} />
|
|
42
|
+
* </StyledCycle>
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* // Large cycle with custom styling
|
|
46
|
+
* <StyledCycle
|
|
47
|
+
* size="lg"
|
|
48
|
+
* backgroundColor={theme.colors.primary[500]}
|
|
49
|
+
* borderColor={theme.colors.primary[600]}
|
|
50
|
+
* >
|
|
51
|
+
* <Text fontSize={20} fontWeight="bold">C</Text>
|
|
52
|
+
* </StyledCycle>
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* // Extra large cycle with gradient background
|
|
56
|
+
* <StyledCycle size="xl">
|
|
57
|
+
* <LinearGradient colors={['#FF6B6B', '#FFD93D']}>
|
|
58
|
+
* <Text color="white">Logo</Text>
|
|
59
|
+
* </LinearGradient>
|
|
60
|
+
* </StyledCycle>
|
|
61
|
+
*/
|
|
62
|
+
declare const StyledCycle: React.ForwardRefExoticComponent<StyledCycleProps & React.RefAttributes<View>>;
|
|
63
|
+
export { StyledCycle, CycleBase };
|
|
64
|
+
export type { CycleVariants, CycleComponentProps, StyledCycleProps, SizeVariant };
|
|
65
|
+
//# sourceMappingURL=cycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cycle.d.ts","sourceRoot":"","sources":["../../../src/shape/cycle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,IAAI,EACJ,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAC;AAItB;;;;;;;;;;;GAWG;AAEH,KAAK,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE7C,KAAK,aAAa,GAAG;IACnB,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB,CAAC;AAEF,KAAK,mBAAmB,GAAG,aAAa,GAAG,SAAS,GAAG,SAAS,CAAC;AAyBjE;;;;GAIG;AACH,QAAA,MAAM,SAAS,mGAmBb,CAAC;AAEH,UAAU,gBAAiB,SAAQ,mBAAmB;IACpD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,QAAA,MAAM,WAAW,+EAYhB,CAAC;AAIF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;AAClC,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC"}
|