orn-ui 0.2.6 → 0.2.8
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/AGENTS.md +372 -0
- package/README.md +46 -15
- package/lib/commonjs/atoms/Gradient.js +111 -0
- package/lib/commonjs/atoms/Gradient.js.map +1 -0
- package/lib/commonjs/atoms/index.js +7 -0
- package/lib/commonjs/atoms/index.js.map +1 -1
- package/lib/commonjs/organisms/Slides.js +406 -0
- package/lib/commonjs/organisms/Slides.js.map +1 -0
- package/lib/commonjs/organisms/index.js +7 -0
- package/lib/commonjs/organisms/index.js.map +1 -1
- package/lib/commonjs/organisms/useSlides.js +186 -0
- package/lib/commonjs/organisms/useSlides.js.map +1 -0
- package/lib/module/atoms/Gradient.js +106 -0
- package/lib/module/atoms/Gradient.js.map +1 -0
- package/lib/module/atoms/index.js +1 -0
- package/lib/module/atoms/index.js.map +1 -1
- package/lib/module/organisms/Slides.js +401 -0
- package/lib/module/organisms/Slides.js.map +1 -0
- package/lib/module/organisms/index.js +1 -0
- package/lib/module/organisms/index.js.map +1 -1
- package/lib/module/organisms/useSlides.js +182 -0
- package/lib/module/organisms/useSlides.js.map +1 -0
- package/lib/typescript/atoms/Badge.d.ts +1 -1
- package/lib/typescript/atoms/Badge.d.ts.map +1 -1
- package/lib/typescript/atoms/Gradient.d.ts +37 -0
- package/lib/typescript/atoms/Gradient.d.ts.map +1 -0
- package/lib/typescript/atoms/Image.d.ts +6 -6
- package/lib/typescript/atoms/Image.d.ts.map +1 -1
- package/lib/typescript/atoms/Input.d.ts +1 -1
- package/lib/typescript/atoms/Input.d.ts.map +1 -1
- package/lib/typescript/atoms/PressableScale.d.ts +1 -1
- package/lib/typescript/atoms/PressableScale.d.ts.map +1 -1
- package/lib/typescript/atoms/Skeleton.d.ts +5 -5
- package/lib/typescript/atoms/Skeleton.d.ts.map +1 -1
- package/lib/typescript/atoms/Spinner.d.ts +4 -4
- package/lib/typescript/atoms/Spinner.d.ts.map +1 -1
- package/lib/typescript/atoms/Transition.d.ts +10 -10
- package/lib/typescript/atoms/Transition.d.ts.map +1 -1
- package/lib/typescript/atoms/index.d.ts +2 -0
- package/lib/typescript/atoms/index.d.ts.map +1 -1
- package/lib/typescript/molecules/AvatarHeader.d.ts +2 -2
- package/lib/typescript/molecules/AvatarHeader.d.ts.map +1 -1
- package/lib/typescript/molecules/FormActions.d.ts +1 -1
- package/lib/typescript/molecules/FormActions.d.ts.map +1 -1
- package/lib/typescript/molecules/OptionCard.d.ts +2 -2
- package/lib/typescript/molecules/OptionCard.d.ts.map +1 -1
- package/lib/typescript/molecules/Stepper.d.ts +8 -8
- package/lib/typescript/molecules/Stepper.d.ts.map +1 -1
- package/lib/typescript/molecules/Steps.d.ts +3 -3
- package/lib/typescript/molecules/Steps.d.ts.map +1 -1
- package/lib/typescript/molecules/SymmetricGrid.d.ts +4 -4
- package/lib/typescript/molecules/SymmetricGrid.d.ts.map +1 -1
- package/lib/typescript/organisms/BottomSheet.d.ts +8 -8
- package/lib/typescript/organisms/BottomSheet.d.ts.map +1 -1
- package/lib/typescript/organisms/DateField.d.ts +10 -10
- package/lib/typescript/organisms/DateField.d.ts.map +1 -1
- package/lib/typescript/organisms/DatePicker.d.ts +10 -10
- package/lib/typescript/organisms/DatePicker.d.ts.map +1 -1
- package/lib/typescript/organisms/List.d.ts +6 -6
- package/lib/typescript/organisms/List.d.ts.map +1 -1
- package/lib/typescript/organisms/NavigationBar.d.ts +2 -2
- package/lib/typescript/organisms/NavigationBar.d.ts.map +1 -1
- package/lib/typescript/organisms/ReorderableList.d.ts +7 -7
- package/lib/typescript/organisms/ReorderableList.d.ts.map +1 -1
- package/lib/typescript/organisms/Screen.d.ts +6 -6
- package/lib/typescript/organisms/SearchList.d.ts +8 -8
- package/lib/typescript/organisms/SearchList.d.ts.map +1 -1
- package/lib/typescript/organisms/Select.d.ts +2 -2
- package/lib/typescript/organisms/Select.d.ts.map +1 -1
- package/lib/typescript/organisms/Slides.d.ts +69 -0
- package/lib/typescript/organisms/Slides.d.ts.map +1 -0
- package/lib/typescript/organisms/Toast.d.ts +2 -2
- package/lib/typescript/organisms/Toast.d.ts.map +1 -1
- package/lib/typescript/organisms/ToastProvider.d.ts +2 -2
- package/lib/typescript/organisms/ToastProvider.d.ts.map +1 -1
- package/lib/typescript/organisms/Wizard.d.ts +7 -7
- package/lib/typescript/organisms/Wizard.d.ts.map +1 -1
- package/lib/typescript/organisms/index.d.ts +2 -0
- package/lib/typescript/organisms/index.d.ts.map +1 -1
- package/lib/typescript/organisms/useSlides.d.ts +52 -0
- package/lib/typescript/organisms/useSlides.d.ts.map +1 -0
- package/lib/typescript/theme/UIProvider.d.ts +9 -9
- package/lib/typescript/theme/UIProvider.d.ts.map +1 -1
- package/llms.txt +34 -0
- package/package.json +34 -6
- package/registry/avatar-header.json +1 -1
- package/registry/badge.json +1 -1
- package/registry/bottom-sheet.json +1 -1
- package/registry/core.json +1 -1
- package/registry/date-field.json +1 -1
- package/registry/date-picker.json +1 -1
- package/registry/form-actions.json +1 -1
- package/registry/gradient.json +18 -0
- package/registry/image.json +1 -1
- package/registry/index.json +52 -26
- package/registry/input.json +1 -1
- package/registry/list.json +1 -1
- package/registry/manifest.json +14 -0
- package/registry/navigation-bar.json +1 -1
- package/registry/option-card.json +1 -1
- package/registry/pressable-scale.json +1 -1
- package/registry/reorderable-list.json +1 -1
- package/registry/screen.json +1 -1
- package/registry/search-list.json +1 -1
- package/registry/select.json +1 -1
- package/registry/skeleton.json +1 -1
- package/registry/slides.json +24 -0
- package/registry/spinner.json +1 -1
- package/registry/stepper.json +1 -1
- package/registry/steps.json +1 -1
- package/registry/symmetric-grid.json +1 -1
- package/registry/toast-provider.json +1 -1
- package/registry/toast.json +1 -1
- package/registry/transition.json +1 -1
- package/registry/wizard.json +1 -1
- package/src/atoms/Badge.tsx +1 -1
- package/src/atoms/Gradient.tsx +99 -0
- package/src/atoms/Image.tsx +6 -6
- package/src/atoms/Input.tsx +1 -1
- package/src/atoms/PressableScale.tsx +1 -1
- package/src/atoms/Skeleton.tsx +5 -5
- package/src/atoms/Spinner.tsx +4 -4
- package/src/atoms/Transition.tsx +10 -10
- package/src/atoms/index.ts +2 -0
- package/src/molecules/AvatarHeader.tsx +2 -2
- package/src/molecules/FormActions.tsx +1 -1
- package/src/molecules/OptionCard.tsx +2 -2
- package/src/molecules/Stepper.tsx +8 -8
- package/src/molecules/Steps.tsx +3 -3
- package/src/molecules/SymmetricGrid.tsx +4 -4
- package/src/organisms/BottomSheet.tsx +8 -8
- package/src/organisms/DateField.tsx +10 -10
- package/src/organisms/DatePicker.tsx +10 -10
- package/src/organisms/List.tsx +6 -6
- package/src/organisms/NavigationBar.tsx +2 -2
- package/src/organisms/ReorderableList.tsx +7 -7
- package/src/organisms/Screen.tsx +6 -6
- package/src/organisms/SearchList.tsx +8 -8
- package/src/organisms/Select.tsx +2 -2
- package/src/organisms/Slides.tsx +413 -0
- package/src/organisms/Toast.tsx +2 -2
- package/src/organisms/ToastProvider.tsx +2 -2
- package/src/organisms/Wizard.tsx +7 -7
- package/src/organisms/index.ts +8 -0
- package/src/organisms/useSlides.ts +220 -0
- package/src/theme/UIProvider.tsx +9 -9
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
4
|
+
import { useReduceMotion } from '../atoms/Transition';
|
|
5
|
+
|
|
6
|
+
/** Una página del scroll. Los clones del modo infinito repiten el `real` de un vecino. */
|
|
7
|
+
|
|
8
|
+
export function clampIndex(value, total) {
|
|
9
|
+
if (total === 0) return 0;
|
|
10
|
+
if (value < 0) return 0;
|
|
11
|
+
if (value > total - 1) return total - 1;
|
|
12
|
+
return value;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* useSlides
|
|
17
|
+
* Todo lo que en `Slides` no se ve: qué página está encuadrada, cuándo mover el
|
|
18
|
+
* scroll, cómo se mapean los clones del modo infinito a índices reales, y el
|
|
19
|
+
* reloj del avance automático.
|
|
20
|
+
*
|
|
21
|
+
* Trabaja sólo con índices, nunca con los ítems: así no necesita el genérico
|
|
22
|
+
* `T` del componente, y el UI resuelve `pages[i].real` contra su propio `data`.
|
|
23
|
+
*/
|
|
24
|
+
export function useSlides({
|
|
25
|
+
total,
|
|
26
|
+
orientation,
|
|
27
|
+
loop,
|
|
28
|
+
autoPlay,
|
|
29
|
+
interval,
|
|
30
|
+
index,
|
|
31
|
+
defaultIndex,
|
|
32
|
+
onIndexChange
|
|
33
|
+
}) {
|
|
34
|
+
const motionReduced = useReduceMotion();
|
|
35
|
+
const isHorizontal = orientation === 'horizontal';
|
|
36
|
+
// Un solo elemento no tiene a dónde ciclar: quedaría deslizable entre tres
|
|
37
|
+
// copias de lo mismo.
|
|
38
|
+
const isLoop = loop && total > 1;
|
|
39
|
+
const [uncontrolled, setUncontrolled] = useState(() => clampIndex(defaultIndex, total));
|
|
40
|
+
const active = clampIndex(index ?? uncontrolled, total);
|
|
41
|
+
const activeRef = useRef(active);
|
|
42
|
+
activeRef.current = active;
|
|
43
|
+
const [autoPlayPaused, setAutoPlayPaused] = useState(false);
|
|
44
|
+
const [size, setSize] = useState({
|
|
45
|
+
width: 0,
|
|
46
|
+
height: 0
|
|
47
|
+
});
|
|
48
|
+
const pageSize = isHorizontal ? size.width : size.height;
|
|
49
|
+
const scrollRef = useRef(null);
|
|
50
|
+
/** Página realmente visible (índice dentro de `pages`, clones incluidos). */
|
|
51
|
+
const offsetPageRef = useRef(isLoop ? 1 : 0);
|
|
52
|
+
const didInitRef = useRef(false);
|
|
53
|
+
const lastPageSizeRef = useRef(0);
|
|
54
|
+
const draggingRef = useRef(false);
|
|
55
|
+
const pages = useMemo(() => {
|
|
56
|
+
const real = Array.from({
|
|
57
|
+
length: total
|
|
58
|
+
}, (_, i) => ({
|
|
59
|
+
real: i,
|
|
60
|
+
clone: null
|
|
61
|
+
}));
|
|
62
|
+
if (!isLoop) return real;
|
|
63
|
+
return [{
|
|
64
|
+
real: total - 1,
|
|
65
|
+
clone: 'head'
|
|
66
|
+
}, ...real, {
|
|
67
|
+
real: 0,
|
|
68
|
+
clone: 'tail'
|
|
69
|
+
}];
|
|
70
|
+
}, [isLoop, total]);
|
|
71
|
+
const scrollToPage = useCallback((page, animated) => {
|
|
72
|
+
const offset = page * pageSize;
|
|
73
|
+
scrollRef.current?.scrollTo({
|
|
74
|
+
x: isHorizontal ? offset : 0,
|
|
75
|
+
y: isHorizontal ? 0 : offset,
|
|
76
|
+
animated
|
|
77
|
+
});
|
|
78
|
+
}, [isHorizontal, pageSize]);
|
|
79
|
+
const goTo = useCallback(next => {
|
|
80
|
+
if (next === activeRef.current) return;
|
|
81
|
+
activeRef.current = next;
|
|
82
|
+
if (index == null) setUncontrolled(next);
|
|
83
|
+
onIndexChange?.(next);
|
|
84
|
+
}, [index, onIndexChange]);
|
|
85
|
+
|
|
86
|
+
// Sólo actúa cuando el índice y la página visible discrepan: un cambio que
|
|
87
|
+
// vino del propio gesto no dispara un segundo scroll encima del que frenó.
|
|
88
|
+
useEffect(() => {
|
|
89
|
+
if (pageSize === 0 || total === 0) return;
|
|
90
|
+
const target = isLoop ? active + 1 : active;
|
|
91
|
+
const resized = lastPageSizeRef.current !== pageSize;
|
|
92
|
+
if (offsetPageRef.current === target && didInitRef.current && !resized) return;
|
|
93
|
+
// Ni el primer posicionamiento ni el reacomodo por rotación son un cambio
|
|
94
|
+
// de slide: animarlos sería un deslizamiento que nadie pidió.
|
|
95
|
+
const animated = didInitRef.current && !resized;
|
|
96
|
+
didInitRef.current = true;
|
|
97
|
+
lastPageSizeRef.current = pageSize;
|
|
98
|
+
offsetPageRef.current = target;
|
|
99
|
+
scrollToPage(target, animated);
|
|
100
|
+
}, [active, isLoop, pageSize, scrollToPage, total]);
|
|
101
|
+
const onLayout = useCallback(event => {
|
|
102
|
+
const {
|
|
103
|
+
width,
|
|
104
|
+
height
|
|
105
|
+
} = event.nativeEvent.layout;
|
|
106
|
+
setSize(prev => prev.width === width && prev.height === height ? prev : {
|
|
107
|
+
width,
|
|
108
|
+
height
|
|
109
|
+
});
|
|
110
|
+
}, []);
|
|
111
|
+
const onMomentumScrollEnd = useCallback(event => {
|
|
112
|
+
draggingRef.current = false;
|
|
113
|
+
if (pageSize === 0) return;
|
|
114
|
+
const {
|
|
115
|
+
contentOffset
|
|
116
|
+
} = event.nativeEvent;
|
|
117
|
+
const page = Math.round((isHorizontal ? contentOffset.x : contentOffset.y) / pageSize);
|
|
118
|
+
if (isLoop) {
|
|
119
|
+
if (page === 0) {
|
|
120
|
+
offsetPageRef.current = total;
|
|
121
|
+
scrollToPage(total, false);
|
|
122
|
+
goTo(total - 1);
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
if (page === total + 1) {
|
|
126
|
+
offsetPageRef.current = 1;
|
|
127
|
+
scrollToPage(1, false);
|
|
128
|
+
goTo(0);
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
offsetPageRef.current = page;
|
|
132
|
+
goTo(page - 1);
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
offsetPageRef.current = page;
|
|
136
|
+
goTo(clampIndex(page, total));
|
|
137
|
+
}, [goTo, isHorizontal, isLoop, pageSize, scrollToPage, total]);
|
|
138
|
+
const onScrollBeginDrag = useCallback(() => {
|
|
139
|
+
draggingRef.current = true;
|
|
140
|
+
}, []);
|
|
141
|
+
const onScrollEndDrag = useCallback(() => {
|
|
142
|
+
// Un arrastre corto puede soltarse sin inercia y no emitir
|
|
143
|
+
// momentumScrollEnd: sin esto el autoPlay quedaría pausado para siempre.
|
|
144
|
+
draggingRef.current = false;
|
|
145
|
+
}, []);
|
|
146
|
+
const toggleAutoPlay = useCallback(() => setAutoPlayPaused(paused => !paused), []);
|
|
147
|
+
useEffect(() => {
|
|
148
|
+
if (!autoPlay || autoPlayPaused || motionReduced || total < 2 || pageSize === 0) return;
|
|
149
|
+
const timer = setInterval(() => {
|
|
150
|
+
if (draggingRef.current) return;
|
|
151
|
+
const from = activeRef.current;
|
|
152
|
+
if (from < total - 1) {
|
|
153
|
+
goTo(from + 1);
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
if (!isLoop) return;
|
|
157
|
+
// Última en modo infinito: avanza al clon de la primera en vez de
|
|
158
|
+
// rebobinar; el salto al original lo cierra momentumScrollEnd.
|
|
159
|
+
offsetPageRef.current = total + 1;
|
|
160
|
+
scrollToPage(total + 1, true);
|
|
161
|
+
}, interval);
|
|
162
|
+
return () => clearInterval(timer);
|
|
163
|
+
}, [autoPlay, autoPlayPaused, goTo, interval, isLoop, motionReduced, pageSize, scrollToPage, total]);
|
|
164
|
+
return {
|
|
165
|
+
active,
|
|
166
|
+
pages,
|
|
167
|
+
isHorizontal,
|
|
168
|
+
isLoop,
|
|
169
|
+
size,
|
|
170
|
+
pageSize,
|
|
171
|
+
scrollRef,
|
|
172
|
+
autoPlayPaused,
|
|
173
|
+
motionReduced,
|
|
174
|
+
goTo,
|
|
175
|
+
toggleAutoPlay,
|
|
176
|
+
onLayout,
|
|
177
|
+
onMomentumScrollEnd,
|
|
178
|
+
onScrollBeginDrag,
|
|
179
|
+
onScrollEndDrag
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=useSlides.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","useReduceMotion","clampIndex","value","total","useSlides","orientation","loop","autoPlay","interval","index","defaultIndex","onIndexChange","motionReduced","isHorizontal","isLoop","uncontrolled","setUncontrolled","active","activeRef","current","autoPlayPaused","setAutoPlayPaused","size","setSize","width","height","pageSize","scrollRef","offsetPageRef","didInitRef","lastPageSizeRef","draggingRef","pages","real","Array","from","length","_","i","clone","scrollToPage","page","animated","offset","scrollTo","x","y","goTo","next","target","resized","onLayout","event","nativeEvent","layout","prev","onMomentumScrollEnd","contentOffset","Math","round","onScrollBeginDrag","onScrollEndDrag","toggleAutoPlay","paused","timer","setInterval","clearInterval"],"sourceRoot":"../../../src","sources":["organisms/useSlides.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ export type BadgeVariant = 'success' | 'error' | 'warning' | 'info' | 'neutral';
|
|
|
4
4
|
export interface BadgeProps {
|
|
5
5
|
label: string;
|
|
6
6
|
variant?: BadgeVariant;
|
|
7
|
-
/**
|
|
7
|
+
/** Manual override, takes precedence over `variant`. */
|
|
8
8
|
backgroundColor?: string;
|
|
9
9
|
textColor?: string;
|
|
10
10
|
style?: StyleProp<ViewStyle>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/atoms/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AACpC,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAI1E,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAEhF,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,
|
|
1
|
+
{"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/atoms/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AACpC,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAI1E,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAEhF,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,wDAAwD;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAYD;;;;;GAKG;AACH,eAAO,MAAM,KAAK,oFAA4E,UAAU,uBAuBtG,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
export type GradientDirection = 'vertical' | 'horizontal' | 'diagonal' | 'diagonal-reverse';
|
|
4
|
+
export interface GradientProps {
|
|
5
|
+
/** Paradas del degradado. Uno solo pinta plano; ninguno no pinta nada. */
|
|
6
|
+
colors: string[];
|
|
7
|
+
/**
|
|
8
|
+
* 'vertical' va de arriba a abajo, 'horizontal' de izquierda a derecha,
|
|
9
|
+
* 'diagonal' de arriba-izquierda a abajo-derecha y 'diagonal-reverse' de
|
|
10
|
+
* arriba-derecha a abajo-izquierda.
|
|
11
|
+
* @default 'vertical'
|
|
12
|
+
*/
|
|
13
|
+
direction?: GradientDirection;
|
|
14
|
+
/**
|
|
15
|
+
* Bandas por tramo (un tramo = un par de colores consecutivos). Más bandas
|
|
16
|
+
* = transición más suave y más vistas en el árbol.
|
|
17
|
+
* @default 24
|
|
18
|
+
*/
|
|
19
|
+
steps?: number;
|
|
20
|
+
/** Contenido por encima del degradado. */
|
|
21
|
+
children?: React.ReactNode;
|
|
22
|
+
style?: StyleProp<ViewStyle>;
|
|
23
|
+
testID?: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Gradient
|
|
27
|
+
* Degradado lineal sin dependencias: React Native no trae uno en el rango
|
|
28
|
+
* soportado (Expo SDK 54–57) y `experimental_backgroundImage` no está en toda
|
|
29
|
+
* esa ventana, así que se compone con bandas.
|
|
30
|
+
*
|
|
31
|
+
* Cada tramo pinta el color inicial y encima N bandas del final con opacidad
|
|
32
|
+
* de 0 a 1. El compositor mezcla alpha linealmente: el resultado es la
|
|
33
|
+
* interpolación sRGB entre paradas sin parsear el color, y por eso vale
|
|
34
|
+
* cualquier formato que acepte RN (hex, `rgba()`, nombre).
|
|
35
|
+
*/
|
|
36
|
+
export declare const Gradient: React.MemoExoticComponent<({ colors, direction, steps, children, style, testID }: GradientProps) => React.JSX.Element>;
|
|
37
|
+
//# sourceMappingURL=Gradient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Gradient.d.ts","sourceRoot":"","sources":["../../../src/atoms/Gradient.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEhF,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,YAAY,GAAG,UAAU,GAAG,kBAAkB,CAAC;AAE5F,MAAM,WAAW,aAAa;IAC5B,0EAA0E;IAC1E,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAaD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,QAAQ,oFACkE,aAAa,uBA+CnG,CAAC"}
|
|
@@ -6,16 +6,16 @@ export interface ImageProps {
|
|
|
6
6
|
height?: number;
|
|
7
7
|
/** @default 'cover' */
|
|
8
8
|
resizeMode?: ImageResizeMode;
|
|
9
|
-
/**
|
|
9
|
+
/** Corner radius, same pattern as Avatar/Card. @default 0 */
|
|
10
10
|
radius?: number;
|
|
11
|
-
/**
|
|
11
|
+
/** What to show while loading. `false` to show nothing. @default true (small spinner) */
|
|
12
12
|
loading?: React.ReactNode | boolean;
|
|
13
|
-
/**
|
|
13
|
+
/** What to show if loading fails. @default a gray placeholder, no content */
|
|
14
14
|
fallback?: React.ReactNode;
|
|
15
15
|
/**
|
|
16
|
-
* 'high'
|
|
17
|
-
*
|
|
18
|
-
*
|
|
16
|
+
* 'high' triggers Image.prefetch() on mount, before <Image> starts
|
|
17
|
+
* its own load cycle — meant for the above-the-fold image of a
|
|
18
|
+
* screen (the first one the user sees). No cost if it's already cached.
|
|
19
19
|
* @default 'normal'
|
|
20
20
|
*/
|
|
21
21
|
priority?: 'low' | 'normal' | 'high';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../src/atoms/Image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiD,MAAM,OAAO,CAAC;AACtE,OAAO,EACL,KAAK,IAAI,OAAO,EAIhB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB;IACvB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,
|
|
1
|
+
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../src/atoms/Image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiD,MAAM,OAAO,CAAC;AACtE,OAAO,EACL,KAAK,IAAI,OAAO,EAIhB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB;IACvB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yFAAyF;IACzF,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC;IACpC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACrC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAC;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAYD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,KAAK,6IAcb,UAAU,uBAoDd,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,aAAa,yBAAmB,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { type StyleProp, type TextInputProps, type ViewStyle } from 'react-nativ
|
|
|
3
3
|
import type { IconName } from '../icons/types';
|
|
4
4
|
export interface InputProps extends Omit<TextInputProps, 'style'> {
|
|
5
5
|
label?: string;
|
|
6
|
-
/**
|
|
6
|
+
/** Shows an asterisk next to the label. Purely visual, doesn't validate anything. */
|
|
7
7
|
required?: boolean;
|
|
8
8
|
error?: string;
|
|
9
9
|
containerStyle?: StyleProp<ViewStyle>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/atoms/Input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiC,MAAM,OAAO,CAAC;AACtD,OAAO,EAOL,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,UAAW,SAAQ,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,
|
|
1
|
+
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/atoms/Input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiC,MAAM,OAAO,CAAC;AACtD,OAAO,EAOL,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,UAAW,SAAQ,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qFAAqF;IACrF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChC,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AA+BD;;;;;GAKG;AACH,eAAO,MAAM,KAAK,yLAgBb,UAAU,uBAkFd,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { type PressableProps, type StyleProp, type ViewStyle } from 'react-native';
|
|
3
3
|
export interface PressableScaleProps extends Omit<PressableProps, 'style'> {
|
|
4
|
-
/**
|
|
4
|
+
/** Target scale when pressed. @default 0.96 */
|
|
5
5
|
scaleTo?: number;
|
|
6
6
|
style?: StyleProp<ViewStyle>;
|
|
7
7
|
children: React.ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PressableScale.d.ts","sourceRoot":"","sources":["../../../src/atoms/PressableScale.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuB,MAAM,OAAO,CAAC;AAC5C,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;IACxE
|
|
1
|
+
{"version":3,"file":"PressableScale.d.ts","sourceRoot":"","sources":["../../../src/atoms/PressableScale.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuB,MAAM,OAAO,CAAC;AAC5C,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;IACxE,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAID;;;;;GAKG;AACH,eAAO,MAAM,cAAc,sGACwD,mBAAmB,uBAkCrG,CAAC"}
|
|
@@ -2,17 +2,17 @@ import React from 'react';
|
|
|
2
2
|
import { type DimensionValue, type StyleProp, type ViewStyle } from 'react-native';
|
|
3
3
|
export type SkeletonVariant = 'rect' | 'text' | 'circle';
|
|
4
4
|
export interface SkeletonProps {
|
|
5
|
-
/** @default '100%' ('circle'
|
|
5
|
+
/** @default '100%' ('circle' also uses this as the diameter) */
|
|
6
6
|
width?: DimensionValue;
|
|
7
|
-
/** @default 16 ('text'
|
|
7
|
+
/** @default 16 ('text' uses the line height; 'circle', the width) */
|
|
8
8
|
height?: DimensionValue;
|
|
9
9
|
/** @default 'rect' */
|
|
10
10
|
variant?: SkeletonVariant;
|
|
11
|
-
/** Override
|
|
11
|
+
/** Override of the theme's radius. */
|
|
12
12
|
radius?: number;
|
|
13
|
-
/**
|
|
13
|
+
/** Stacked lines, only for variant="text". @default 1 */
|
|
14
14
|
lines?: number;
|
|
15
|
-
/**
|
|
15
|
+
/** Width of the last line, so the paragraph doesn't end as a solid block. @default '60%' */
|
|
16
16
|
lastLineWidth?: DimensionValue;
|
|
17
17
|
/** @default true */
|
|
18
18
|
animated?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Skeleton.d.ts","sourceRoot":"","sources":["../../../src/atoms/Skeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AACvD,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEzD,MAAM,WAAW,aAAa;IAC5B,
|
|
1
|
+
{"version":3,"file":"Skeleton.d.ts","sourceRoot":"","sources":["../../../src/atoms/Skeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AACvD,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEzD,MAAM,WAAW,aAAa;IAC5B,gEAAgE;IAChE,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,qEAAqE;IACrE,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,sBAAsB;IACtB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4FAA4F;IAC5F,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,oBAAoB;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAOD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,iHAWhB,aAAa,uBAyDjB,CAAC"}
|
|
@@ -4,15 +4,15 @@ export interface SpinnerProps {
|
|
|
4
4
|
size?: 'small' | 'large';
|
|
5
5
|
color?: string;
|
|
6
6
|
text?: string;
|
|
7
|
-
/** @default true.
|
|
7
|
+
/** @default true. When false, doesn't take up flex:1 (useful inline, inside a button/row). */
|
|
8
8
|
fullscreen?: boolean;
|
|
9
9
|
/**
|
|
10
|
-
* 'native'
|
|
11
|
-
*
|
|
10
|
+
* 'native' uses the system's ActivityIndicator; 'dots' and 'ring' are
|
|
11
|
+
* custom indicators, identical on iOS and Android.
|
|
12
12
|
* @default 'native'
|
|
13
13
|
*/
|
|
14
14
|
variant?: SpinnerVariant;
|
|
15
|
-
/**
|
|
15
|
+
/** Fully custom indicator. Takes precedence over `variant`. */
|
|
16
16
|
indicator?: React.ReactNode;
|
|
17
17
|
testID?: string;
|
|
18
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../../src/atoms/Spinner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAKvD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAExD,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,
|
|
1
|
+
{"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../../src/atoms/Spinner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAKvD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAExD,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8FAA8F;IAC9F,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA6ED,eAAO,MAAM,OAAO,4FAC0E,YAAY,uBAyBzG,CAAC"}
|
|
@@ -3,25 +3,25 @@ import { Animated, type StyleProp, type ViewStyle } from 'react-native';
|
|
|
3
3
|
export type TransitionPreset = 'fade' | 'scale' | 'pop' | 'slide-up' | 'slide-down' | 'slide-left' | 'slide-right';
|
|
4
4
|
export interface TransitionProps {
|
|
5
5
|
children: React.ReactNode;
|
|
6
|
-
/**
|
|
6
|
+
/** Enters when true, exits (and unmounts) when false. @default true */
|
|
7
7
|
visible?: boolean;
|
|
8
|
-
/**
|
|
8
|
+
/** One or more: 'fade scale' combines opacity and scale. @default 'fade' */
|
|
9
9
|
preset?: TransitionPreset | TransitionPreset[];
|
|
10
|
-
/**
|
|
10
|
+
/** Timing duration in ms. @default tokens.duration.base */
|
|
11
11
|
duration?: number;
|
|
12
|
-
/** ms
|
|
12
|
+
/** ms before starting. A per-index delay staggers a list. @default 0 */
|
|
13
13
|
delay?: number;
|
|
14
|
-
/**
|
|
14
|
+
/** Pixels traveled by the slide presets. @default 24 */
|
|
15
15
|
distance?: number;
|
|
16
|
-
/** Spring
|
|
16
|
+
/** Spring instead of timing (implicit in 'pop'). */
|
|
17
17
|
spring?: boolean;
|
|
18
|
-
/**
|
|
18
|
+
/** Also animates the first render. When false it starts already present. @default true */
|
|
19
19
|
appear?: boolean;
|
|
20
|
-
/**
|
|
20
|
+
/** Keeps the node mounted on exit, only hides it. @default false */
|
|
21
21
|
keepMounted?: boolean;
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
23
|
+
* 0→1 progress driven from outside. With this, Transition only interpolates:
|
|
24
|
+
* whoever passes it decides when and how it advances (a PanResponder, for example).
|
|
25
25
|
*/
|
|
26
26
|
value?: Animated.Value;
|
|
27
27
|
onEntered?: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transition.d.ts","sourceRoot":"","sources":["../../../src/atoms/Transition.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqD,MAAM,OAAO,CAAC;AAC1E,OAAO,EAAqB,QAAQ,EAAU,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAGnG,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,OAAO,GACP,KAAK,GACL,UAAU,GACV,YAAY,GACZ,YAAY,GACZ,aAAa,CAAC;AAElB,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B
|
|
1
|
+
{"version":3,"file":"Transition.d.ts","sourceRoot":"","sources":["../../../src/atoms/Transition.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqD,MAAM,OAAO,CAAC;AAC1E,OAAO,EAAqB,QAAQ,EAAU,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAGnG,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,OAAO,GACP,KAAK,GACL,UAAU,GACV,YAAY,GACZ,YAAY,GACZ,aAAa,CAAC;AAElB,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;IAC/C,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0FAA0F;IAC1F,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oEAAoE;IACpE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAkBzC;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,gKAgBlB,eAAe,8BA0FnB,CAAC"}
|
|
@@ -14,6 +14,8 @@ export { Card } from './Card';
|
|
|
14
14
|
export type { CardProps } from './Card';
|
|
15
15
|
export { Divider } from './Divider';
|
|
16
16
|
export type { DividerProps } from './Divider';
|
|
17
|
+
export { Gradient } from './Gradient';
|
|
18
|
+
export type { GradientProps, GradientDirection } from './Gradient';
|
|
17
19
|
export { Avatar } from './Avatar';
|
|
18
20
|
export type { AvatarProps } from './Avatar';
|
|
19
21
|
export { Image, prefetchImage } from './Image';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atoms/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACxD,YAAY,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/C,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atoms/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACxD,YAAY,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/C,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -2,10 +2,10 @@ import React from 'react';
|
|
|
2
2
|
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
3
|
import type { IconName } from '../icons/types';
|
|
4
4
|
export interface AvatarHeaderProps {
|
|
5
|
-
/**
|
|
5
|
+
/** Icon to show inside the circle. If omitted, `initials` is used instead. */
|
|
6
6
|
iconName?: IconName;
|
|
7
7
|
iconColor?: string;
|
|
8
|
-
/**
|
|
8
|
+
/** Short text (e.g. 2 letters) shown when `iconName` isn't provided. */
|
|
9
9
|
initials?: string;
|
|
10
10
|
title: string;
|
|
11
11
|
subtitle?: React.ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AvatarHeader.d.ts","sourceRoot":"","sources":["../../../src/molecules/AvatarHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AACpC,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAI1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,iBAAiB;IAChC,
|
|
1
|
+
{"version":3,"file":"AvatarHeader.d.ts","sourceRoot":"","sources":["../../../src/molecules/AvatarHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AACpC,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAI1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,iBAAiB;IAChC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAkBD;;;;GAIG;AACH,eAAO,MAAM,YAAY,wFAAoE,iBAAiB,uBA4B5G,CAAC"}
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
3
|
import type { IconName } from '../icons/types';
|
|
4
4
|
export interface FormActionsProps {
|
|
5
|
-
/**
|
|
5
|
+
/** If omitted, only the secondary button is shown. */
|
|
6
6
|
primaryLabel?: string;
|
|
7
7
|
onPrimaryPress?: () => void;
|
|
8
8
|
primaryDisabled?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormActions.d.ts","sourceRoot":"","sources":["../../../src/molecules/FormActions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AACpC,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C,MAAM,WAAW,gBAAgB;IAC/B,
|
|
1
|
+
{"version":3,"file":"FormActions.d.ts","sourceRoot":"","sources":["../../../src/molecules/FormActions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AACpC,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C,MAAM,WAAW,gBAAgB;IAC/B,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mBAAmB,CAAC,EAAE,QAAQ,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,+JAUnB,gBAAgB,uBAiBpB,CAAC"}
|
|
@@ -3,13 +3,13 @@ import { type StyleProp, type ViewStyle } from 'react-native';
|
|
|
3
3
|
import type { IconName } from '../icons/types';
|
|
4
4
|
export interface OptionCardProps {
|
|
5
5
|
label: string;
|
|
6
|
-
/**
|
|
6
|
+
/** Secondary line: the detail that decides the choice ("arrives in 3 days"). */
|
|
7
7
|
description?: string;
|
|
8
8
|
iconName?: IconName;
|
|
9
9
|
isSelected: boolean;
|
|
10
10
|
onPress: () => void;
|
|
11
11
|
disabled?: boolean;
|
|
12
|
-
/** 'vertical':
|
|
12
|
+
/** 'vertical': icon on top, text centered below. 'horizontal': in a row. @default 'horizontal' */
|
|
13
13
|
layout?: 'vertical' | 'horizontal';
|
|
14
14
|
style?: StyleProp<ViewStyle>;
|
|
15
15
|
testID?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OptionCard.d.ts","sourceRoot":"","sources":["../../../src/molecules/OptionCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AACpC,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAK1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd
|
|
1
|
+
{"version":3,"file":"OptionCard.d.ts","sourceRoot":"","sources":["../../../src/molecules/OptionCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AACpC,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAK1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kGAAkG;IAClG,MAAM,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACnC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAiCD;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,sHAWlB,eAAe,uBA8CnB,CAAC"}
|
|
@@ -6,23 +6,23 @@ export interface StepperProps {
|
|
|
6
6
|
onChangeText: (text: string) => void;
|
|
7
7
|
onIncrement: () => void;
|
|
8
8
|
onDecrement: () => void;
|
|
9
|
-
/**
|
|
9
|
+
/** Scale of the control: height, buttons, icon and typography. @default 'md' */
|
|
10
10
|
size?: StepperSize;
|
|
11
|
-
/**
|
|
11
|
+
/** Takes up all available width and the input absorbs the extra space. @default false */
|
|
12
12
|
block?: boolean;
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* When false the value can only be changed with the buttons: the keyboard doesn't open and
|
|
15
|
+
* the field loses the background that marks it as editable. @default true
|
|
16
16
|
*/
|
|
17
17
|
editable?: boolean;
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
19
|
+
* Minimum allowed value. Disables "-" when reached and clamps the typed value on
|
|
20
|
+
* blur. Negative values are only accepted if `min` is negative.
|
|
21
21
|
*/
|
|
22
22
|
min?: number;
|
|
23
|
-
/**
|
|
23
|
+
/** Maximum allowed value. Disables "+" when reached and clamps the typed value. */
|
|
24
24
|
max?: number;
|
|
25
|
-
/**
|
|
25
|
+
/** Accepts a decimal separator, normalizing comma to dot. @default false */
|
|
26
26
|
allowDecimals?: boolean;
|
|
27
27
|
style?: StyleProp<ViewStyle>;
|
|
28
28
|
incrementAccessibilityLabel?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stepper.d.ts","sourceRoot":"","sources":["../../../src/molecules/Stepper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyB,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAqC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAKjG,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE7C,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,
|
|
1
|
+
{"version":3,"file":"Stepper.d.ts","sourceRoot":"","sources":["../../../src/molecules/Stepper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyB,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAqC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAKjG,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE7C,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,gFAAgF;IAChF,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,yFAAyF;IACzF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mFAAmF;IACnF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAgCD,6EAA6E;AAC7E,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,aAAqB,EAAE,aAAqB,EAAE;;;CAAK,GAAG,MAAM,CAO3G;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,OAAO,0MAgBf,YAAY,uBAuFhB,CAAC"}
|
|
@@ -7,16 +7,16 @@ export interface StepItem {
|
|
|
7
7
|
export type StepStatus = 'completed' | 'current' | 'pending';
|
|
8
8
|
export interface StepsProps {
|
|
9
9
|
steps: StepItem[];
|
|
10
|
-
/**
|
|
10
|
+
/** Index of the current step (0-based). Earlier steps become 'completed'. */
|
|
11
11
|
current: number;
|
|
12
12
|
/** @default 'horizontal' */
|
|
13
13
|
orientation?: 'horizontal' | 'vertical';
|
|
14
14
|
/**
|
|
15
|
-
*
|
|
15
|
+
* What the circle of an already-completed step shows: a check, or its number.
|
|
16
16
|
* @default 'check'
|
|
17
17
|
*/
|
|
18
18
|
completedIndicator?: 'check' | 'number';
|
|
19
|
-
/**
|
|
19
|
+
/** If provided, each step is tappable and reports its index. */
|
|
20
20
|
onStepPress?: (index: number) => void;
|
|
21
21
|
style?: StyleProp<ViewStyle>;
|
|
22
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Steps.d.ts","sourceRoot":"","sources":["../../../src/molecules/Steps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AACpC,OAAO,EAA4C,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAKxG,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;AAE7D,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,
|
|
1
|
+
{"version":3,"file":"Steps.d.ts","sourceRoot":"","sources":["../../../src/molecules/Steps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AACpC,OAAO,EAA4C,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAKxG,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;AAE7D,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IACxC,gEAAgE;IAChE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAsDD;;;;GAIG;AACH,eAAO,MAAM,KAAK,sGACmF,UAAU,uBAsI9G,CAAC"}
|
|
@@ -4,13 +4,13 @@ export interface SymmetricGridProps<T> {
|
|
|
4
4
|
data: T[];
|
|
5
5
|
renderItem: (item: T, index: number) => React.ReactElement;
|
|
6
6
|
keyExtractor: (item: T, index: number) => string;
|
|
7
|
-
/**
|
|
7
|
+
/** Columns per row. @default 2 */
|
|
8
8
|
columns?: number;
|
|
9
|
-
/**
|
|
9
|
+
/** Spacing between cells, on both axes. @default theme.tokens.spacing.md */
|
|
10
10
|
gap?: number;
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
12
|
+
* Incomplete last row: centered (symmetric) instead of stuck to the
|
|
13
|
+
* left with a gap on the right. @default true
|
|
14
14
|
*/
|
|
15
15
|
balanceLastRow?: boolean;
|
|
16
16
|
style?: StyleProp<ViewStyle>;
|