@cdx-ui/components 0.0.1-alpha.20 → 0.0.1-alpha.21
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/components/BottomSheet/index.js +248 -0
- package/lib/commonjs/components/BottomSheet/index.js.map +1 -0
- package/lib/commonjs/components/BottomSheet/styles.js +61 -0
- package/lib/commonjs/components/BottomSheet/styles.js.map +1 -0
- package/lib/commonjs/components/Link/index.js +58 -2
- package/lib/commonjs/components/Link/index.js.map +1 -1
- package/lib/commonjs/components/Link/styles.js +4 -2
- package/lib/commonjs/components/Link/styles.js.map +1 -1
- package/lib/commonjs/components/index.js +12 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/module/components/BottomSheet/index.js +242 -0
- package/lib/module/components/BottomSheet/index.js.map +1 -0
- package/lib/module/components/BottomSheet/styles.js +58 -0
- package/lib/module/components/BottomSheet/styles.js.map +1 -0
- package/lib/module/components/Link/index.js +60 -4
- package/lib/module/components/Link/index.js.map +1 -1
- package/lib/module/components/Link/styles.js +4 -2
- package/lib/module/components/Link/styles.js.map +1 -1
- package/lib/module/components/index.js +1 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/typescript/components/BottomSheet/index.d.ts +61 -0
- package/lib/typescript/components/BottomSheet/index.d.ts.map +1 -0
- package/lib/typescript/components/BottomSheet/styles.d.ts +16 -0
- package/lib/typescript/components/BottomSheet/styles.d.ts.map +1 -0
- package/lib/typescript/components/Link/index.d.ts +20 -2
- package/lib/typescript/components/Link/index.d.ts.map +1 -1
- package/lib/typescript/components/Link/styles.d.ts +2 -0
- package/lib/typescript/components/Link/styles.d.ts.map +1 -1
- package/lib/typescript/components/index.d.ts +1 -0
- package/lib/typescript/components/index.d.ts.map +1 -1
- package/package.json +5 -4
- package/src/components/BottomSheet/index.tsx +316 -0
- package/src/components/BottomSheet/styles.ts +79 -0
- package/src/components/Link/index.tsx +61 -5
- package/src/components/Link/styles.ts +7 -3
- package/src/components/index.ts +1 -0
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React, { forwardRef, useCallback, useRef } from 'react';
|
|
4
|
+
import { Dimensions, Pressable, View } from 'react-native';
|
|
5
|
+
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
6
|
+
import { BottomSheetModal, BottomSheetModalProvider, BottomSheetScrollView, BottomSheetView, BottomSheetBackdrop, BottomSheetFooter as GorhomBottomSheetFooter } from '@gorhom/bottom-sheet';
|
|
7
|
+
import { cn } from '@cdx-ui/utils';
|
|
8
|
+
import { ArrowBackIosNew, Close } from '@cdx-ui/icons';
|
|
9
|
+
import { Heading } from '../Heading';
|
|
10
|
+
import { Icon } from '../Icon';
|
|
11
|
+
import { Text } from '../Text';
|
|
12
|
+
import { bottomSheetBackButtonVariants, bottomSheetBackIconVariants, bottomSheetCloseButtonVariants, bottomSheetCloseIconVariants, bottomSheetContainerVariants, bottomSheetContentVariants, bottomSheetFooterVariants, bottomSheetHeaderVariants, bottomSheetSubtitleVariants, handleIndicatorStyle } from './styles';
|
|
13
|
+
|
|
14
|
+
/** Ref type for BottomSheet; forwards the @gorhom modal ref (present, dismiss, snapToIndex, minimize, restore, etc.). */
|
|
15
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
16
|
+
function BottomSheetHeaderComponent({
|
|
17
|
+
title,
|
|
18
|
+
subtitle,
|
|
19
|
+
children,
|
|
20
|
+
className,
|
|
21
|
+
onClose,
|
|
22
|
+
closeAccessibilityLabel,
|
|
23
|
+
onBack,
|
|
24
|
+
backAccessibilityLabel = 'Go back'
|
|
25
|
+
}, ref) {
|
|
26
|
+
const hasTitle = title !== undefined && title !== '';
|
|
27
|
+
const hasContent = hasTitle || !!children || !!onBack;
|
|
28
|
+
const computedClassName = cn(bottomSheetHeaderVariants({
|
|
29
|
+
hasTitle: hasContent
|
|
30
|
+
}), className);
|
|
31
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
32
|
+
ref: ref,
|
|
33
|
+
className: computedClassName,
|
|
34
|
+
children: [onBack && /*#__PURE__*/_jsx(Pressable, {
|
|
35
|
+
onPress: onBack,
|
|
36
|
+
hitSlop: 12,
|
|
37
|
+
accessibilityRole: "button",
|
|
38
|
+
accessibilityLabel: backAccessibilityLabel,
|
|
39
|
+
className: cn(bottomSheetBackButtonVariants()),
|
|
40
|
+
children: /*#__PURE__*/_jsx(Icon, {
|
|
41
|
+
as: ArrowBackIosNew,
|
|
42
|
+
className: bottomSheetBackIconVariants()
|
|
43
|
+
})
|
|
44
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
45
|
+
className: "flex-1",
|
|
46
|
+
children: children ?? (hasTitle ? /*#__PURE__*/_jsxs(View, {
|
|
47
|
+
children: [/*#__PURE__*/_jsx(Heading, {
|
|
48
|
+
size: "xs",
|
|
49
|
+
className: "text-lg",
|
|
50
|
+
children: title
|
|
51
|
+
}), subtitle ? /*#__PURE__*/_jsx(Text, {
|
|
52
|
+
className: bottomSheetSubtitleVariants(),
|
|
53
|
+
children: subtitle
|
|
54
|
+
}) : null]
|
|
55
|
+
}) : null)
|
|
56
|
+
}), onClose && /*#__PURE__*/_jsx(BottomSheetCloseButton, {
|
|
57
|
+
onPress: onClose,
|
|
58
|
+
...(closeAccessibilityLabel !== undefined && {
|
|
59
|
+
accessibilityLabel: closeAccessibilityLabel
|
|
60
|
+
})
|
|
61
|
+
})]
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
BottomSheetHeaderComponent.displayName = 'BottomSheet.Header';
|
|
65
|
+
const BottomSheetHeader = /*#__PURE__*/forwardRef(BottomSheetHeaderComponent);
|
|
66
|
+
BottomSheetHeader.displayName = 'BottomSheet.Header';
|
|
67
|
+
|
|
68
|
+
// =============================================================================
|
|
69
|
+
// CLOSEBUTTON
|
|
70
|
+
// =============================================================================
|
|
71
|
+
|
|
72
|
+
function BottomSheetCloseButton({
|
|
73
|
+
onPress,
|
|
74
|
+
className,
|
|
75
|
+
accessibilityLabel = 'Close'
|
|
76
|
+
}) {
|
|
77
|
+
return /*#__PURE__*/_jsx(Pressable, {
|
|
78
|
+
onPress: onPress,
|
|
79
|
+
hitSlop: 12,
|
|
80
|
+
accessibilityRole: "button",
|
|
81
|
+
accessibilityLabel: accessibilityLabel,
|
|
82
|
+
className: cn(bottomSheetCloseButtonVariants(), className),
|
|
83
|
+
children: /*#__PURE__*/_jsx(Icon, {
|
|
84
|
+
as: Close,
|
|
85
|
+
className: bottomSheetCloseIconVariants()
|
|
86
|
+
})
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
BottomSheetCloseButton.displayName = 'BottomSheet.CloseButton';
|
|
90
|
+
|
|
91
|
+
// =============================================================================
|
|
92
|
+
// CONTENT
|
|
93
|
+
// =============================================================================
|
|
94
|
+
|
|
95
|
+
const BottomSheetContent = /*#__PURE__*/forwardRef(({
|
|
96
|
+
children,
|
|
97
|
+
className,
|
|
98
|
+
hasSafeAreaInset,
|
|
99
|
+
style
|
|
100
|
+
}, ref) => {
|
|
101
|
+
const insets = useSafeAreaInsets();
|
|
102
|
+
const computedClassName = cn(bottomSheetContentVariants(), className);
|
|
103
|
+
return /*#__PURE__*/_jsx(View, {
|
|
104
|
+
ref: ref,
|
|
105
|
+
className: computedClassName,
|
|
106
|
+
style: hasSafeAreaInset ? {
|
|
107
|
+
paddingBottom: insets.bottom,
|
|
108
|
+
...style
|
|
109
|
+
} : style,
|
|
110
|
+
pointerEvents: "box-none",
|
|
111
|
+
children: children
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
BottomSheetContent.displayName = 'BottomSheet.Content';
|
|
115
|
+
|
|
116
|
+
// =============================================================================
|
|
117
|
+
// FOOTER
|
|
118
|
+
// =============================================================================
|
|
119
|
+
|
|
120
|
+
const BottomSheetFooter = /*#__PURE__*/forwardRef(({
|
|
121
|
+
children,
|
|
122
|
+
className,
|
|
123
|
+
style
|
|
124
|
+
}, ref) => {
|
|
125
|
+
const insets = useSafeAreaInsets();
|
|
126
|
+
const computedClassName = cn(bottomSheetFooterVariants(), className);
|
|
127
|
+
return /*#__PURE__*/_jsx(View, {
|
|
128
|
+
ref: ref,
|
|
129
|
+
className: computedClassName,
|
|
130
|
+
style: {
|
|
131
|
+
paddingBottom: Math.max(insets.bottom, 24),
|
|
132
|
+
...style
|
|
133
|
+
},
|
|
134
|
+
pointerEvents: "box-none",
|
|
135
|
+
children: children
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
BottomSheetFooter.displayName = 'BottomSheet.Footer';
|
|
139
|
+
|
|
140
|
+
// =============================================================================
|
|
141
|
+
// MODAL WRAPPER (WITH STYLES)
|
|
142
|
+
// =============================================================================
|
|
143
|
+
|
|
144
|
+
const MAX_DYNAMIC_CONTENT_SIZE = Dimensions.get('window').height * 0.9;
|
|
145
|
+
const CustomBackdrop = props => {
|
|
146
|
+
return /*#__PURE__*/_jsx(BottomSheetBackdrop, {
|
|
147
|
+
...props,
|
|
148
|
+
disappearsOnIndex: -1,
|
|
149
|
+
appearsOnIndex: 0,
|
|
150
|
+
opacity: 0.5,
|
|
151
|
+
pressBehavior: "close"
|
|
152
|
+
});
|
|
153
|
+
};
|
|
154
|
+
const BottomSheetModalStyled = /*#__PURE__*/forwardRef(({
|
|
155
|
+
handleVisible = true,
|
|
156
|
+
footer,
|
|
157
|
+
...rest
|
|
158
|
+
}, ref) => {
|
|
159
|
+
const renderFooter = useCallback(props => /*#__PURE__*/_jsx(GorhomBottomSheetFooter, {
|
|
160
|
+
...props,
|
|
161
|
+
children: footer
|
|
162
|
+
}), [footer]);
|
|
163
|
+
return /*#__PURE__*/_jsx(BottomSheetModal, {
|
|
164
|
+
ref: ref,
|
|
165
|
+
enableDynamicSizing: true,
|
|
166
|
+
maxDynamicContentSize: MAX_DYNAMIC_CONTENT_SIZE,
|
|
167
|
+
handleComponent: handleVisible ? undefined : null,
|
|
168
|
+
handleIndicatorStyle: handleVisible ? handleIndicatorStyle : undefined,
|
|
169
|
+
backdropComponent: CustomBackdrop,
|
|
170
|
+
backgroundComponent: backgroundProps => /*#__PURE__*/_jsx(View, {
|
|
171
|
+
...backgroundProps,
|
|
172
|
+
className: cn(bottomSheetContainerVariants())
|
|
173
|
+
}),
|
|
174
|
+
...rest,
|
|
175
|
+
...(footer != null && {
|
|
176
|
+
footerComponent: renderFooter
|
|
177
|
+
})
|
|
178
|
+
});
|
|
179
|
+
});
|
|
180
|
+
BottomSheetModalStyled.displayName = 'BottomSheet.Modal';
|
|
181
|
+
|
|
182
|
+
// =============================================================================
|
|
183
|
+
// SCROLLVIEW WRAPPER (with footer margin adjustment enabled by default)
|
|
184
|
+
// =============================================================================
|
|
185
|
+
|
|
186
|
+
function BottomSheetScrollViewStyled({
|
|
187
|
+
enableFooterMarginAdjustment = true,
|
|
188
|
+
children,
|
|
189
|
+
...rest
|
|
190
|
+
}) {
|
|
191
|
+
return /*#__PURE__*/_jsx(BottomSheetScrollView, {
|
|
192
|
+
enableFooterMarginAdjustment: enableFooterMarginAdjustment,
|
|
193
|
+
...rest,
|
|
194
|
+
children: children
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
BottomSheetScrollViewStyled.displayName = 'BottomSheet.ScrollView';
|
|
198
|
+
|
|
199
|
+
// =============================================================================
|
|
200
|
+
// VIEW WRAPPER (with footer margin adjustment enabled by default)
|
|
201
|
+
// =============================================================================
|
|
202
|
+
|
|
203
|
+
function BottomSheetViewStyled({
|
|
204
|
+
enableFooterMarginAdjustment = true,
|
|
205
|
+
children,
|
|
206
|
+
...rest
|
|
207
|
+
}) {
|
|
208
|
+
return /*#__PURE__*/_jsx(BottomSheetView, {
|
|
209
|
+
enableFooterMarginAdjustment: enableFooterMarginAdjustment,
|
|
210
|
+
...rest,
|
|
211
|
+
children: children
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
BottomSheetViewStyled.displayName = 'BottomSheet.View';
|
|
215
|
+
|
|
216
|
+
// Display names for gorhom components exposed as BottomSheet.*
|
|
217
|
+
|
|
218
|
+
BottomSheetModalProvider.displayName = 'BottomSheet.Provider';
|
|
219
|
+
|
|
220
|
+
// ── Public exports ────────────────────────────────────────
|
|
221
|
+
|
|
222
|
+
export const BottomSheet = {
|
|
223
|
+
Modal: BottomSheetModalStyled,
|
|
224
|
+
Header: BottomSheetHeader,
|
|
225
|
+
Content: BottomSheetContent,
|
|
226
|
+
Footer: BottomSheetFooter,
|
|
227
|
+
Provider: BottomSheetModalProvider,
|
|
228
|
+
ScrollView: BottomSheetScrollViewStyled,
|
|
229
|
+
View: BottomSheetViewStyled
|
|
230
|
+
};
|
|
231
|
+
|
|
232
|
+
// ── Hooks ────────────────────────────────────────────────
|
|
233
|
+
|
|
234
|
+
export function useBottomSheet() {
|
|
235
|
+
const ref = useRef(null);
|
|
236
|
+
return {
|
|
237
|
+
ref,
|
|
238
|
+
present: () => ref.current?.present(),
|
|
239
|
+
dismiss: () => ref.current?.dismiss()
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","forwardRef","useCallback","useRef","Dimensions","Pressable","View","useSafeAreaInsets","BottomSheetModal","BottomSheetModalProvider","BottomSheetScrollView","BottomSheetView","BottomSheetBackdrop","BottomSheetFooter","GorhomBottomSheetFooter","cn","ArrowBackIosNew","Close","Heading","Icon","Text","bottomSheetBackButtonVariants","bottomSheetBackIconVariants","bottomSheetCloseButtonVariants","bottomSheetCloseIconVariants","bottomSheetContainerVariants","bottomSheetContentVariants","bottomSheetFooterVariants","bottomSheetHeaderVariants","bottomSheetSubtitleVariants","handleIndicatorStyle","jsx","_jsx","jsxs","_jsxs","BottomSheetHeaderComponent","title","subtitle","children","className","onClose","closeAccessibilityLabel","onBack","backAccessibilityLabel","ref","hasTitle","undefined","hasContent","computedClassName","onPress","hitSlop","accessibilityRole","accessibilityLabel","as","size","BottomSheetCloseButton","displayName","BottomSheetHeader","BottomSheetContent","hasSafeAreaInset","style","insets","paddingBottom","bottom","pointerEvents","Math","max","MAX_DYNAMIC_CONTENT_SIZE","get","height","CustomBackdrop","props","disappearsOnIndex","appearsOnIndex","opacity","pressBehavior","BottomSheetModalStyled","handleVisible","footer","rest","renderFooter","enableDynamicSizing","maxDynamicContentSize","handleComponent","backdropComponent","backgroundComponent","backgroundProps","footerComponent","BottomSheetScrollViewStyled","enableFooterMarginAdjustment","BottomSheetViewStyled","BottomSheet","Modal","Header","Content","Footer","Provider","ScrollView","useBottomSheet","present","current","dismiss"],"sourceRoot":"../../../../src","sources":["components/BottomSheet/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { cva } from 'class-variance-authority';
|
|
4
|
+
import { COLOR_BG_PRIMARY, COLOR_BORDER_DEFAULT, COLOR_TEXT_PRIMARY, COLOR_TEXT_SECONDARY } from '../../styles/primitives';
|
|
5
|
+
|
|
6
|
+
// ── Container ──────────────────────────────────────────────
|
|
7
|
+
|
|
8
|
+
export const bottomSheetContainerVariants = cva(['rounded-t-3xl border-t border-x overflow-hidden', COLOR_BG_PRIMARY, COLOR_BORDER_DEFAULT]);
|
|
9
|
+
|
|
10
|
+
// ── Header ─────────────────────────────────────────────────
|
|
11
|
+
|
|
12
|
+
export const bottomSheetHeaderVariants = cva(['flex-row items-center justify-between min-h-12 px-4 pt-3 pb-2', COLOR_BG_PRIMARY, COLOR_TEXT_PRIMARY], {
|
|
13
|
+
variants: {
|
|
14
|
+
hasTitle: {
|
|
15
|
+
true: '',
|
|
16
|
+
false: 'justify-end'
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
defaultVariants: {
|
|
20
|
+
hasTitle: true
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
// ── Content ────────────────────────────────────────────────
|
|
25
|
+
|
|
26
|
+
export const bottomSheetContentVariants = cva([COLOR_BG_PRIMARY, 'px-4 pb-6']);
|
|
27
|
+
|
|
28
|
+
// ── Footer ─────────────────────────────────────────────────
|
|
29
|
+
|
|
30
|
+
export const bottomSheetFooterVariants = cva(['px-4 pt-3 pb-4 border-t', COLOR_BG_PRIMARY, COLOR_BORDER_DEFAULT]);
|
|
31
|
+
|
|
32
|
+
// ── Subtitle ────────────────────────────────────────────────
|
|
33
|
+
|
|
34
|
+
export const bottomSheetSubtitleVariants = cva(['text-sm', COLOR_TEXT_SECONDARY]);
|
|
35
|
+
|
|
36
|
+
// ── Back Button ─────────────────────────────────────────────
|
|
37
|
+
|
|
38
|
+
export const bottomSheetBackButtonVariants = cva(['p-1 -m-1 mr-2 rounded-full active:opacity-70']);
|
|
39
|
+
export const bottomSheetBackIconVariants = cva(['size-5 text-slate-500']);
|
|
40
|
+
|
|
41
|
+
// ── Close Button ───────────────────────────────────────────
|
|
42
|
+
|
|
43
|
+
export const bottomSheetCloseButtonVariants = cva(['p-1 -m-1 rounded-full active:opacity-70']);
|
|
44
|
+
|
|
45
|
+
// ── Close Icon ─────────────────────────────────────────────
|
|
46
|
+
|
|
47
|
+
export const bottomSheetCloseIconVariants = cva(['size-5 text-slate-500']);
|
|
48
|
+
|
|
49
|
+
// ── Handle indicator ────────────────────────────────────────
|
|
50
|
+
// Plain ViewStyle — gorhom's handleIndicatorStyle doesn't accept classNames.
|
|
51
|
+
// slate-300 (#cbd5e1) maps to COLOR_BORDER_STRONG; update when raw token palette is available (TODO).
|
|
52
|
+
export const handleIndicatorStyle = {
|
|
53
|
+
backgroundColor: '#cbd5e1',
|
|
54
|
+
width: 36,
|
|
55
|
+
height: 4,
|
|
56
|
+
borderRadius: 2
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["cva","COLOR_BG_PRIMARY","COLOR_BORDER_DEFAULT","COLOR_TEXT_PRIMARY","COLOR_TEXT_SECONDARY","bottomSheetContainerVariants","bottomSheetHeaderVariants","variants","hasTitle","true","false","defaultVariants","bottomSheetContentVariants","bottomSheetFooterVariants","bottomSheetSubtitleVariants","bottomSheetBackButtonVariants","bottomSheetBackIconVariants","bottomSheetCloseButtonVariants","bottomSheetCloseIconVariants","handleIndicatorStyle","backgroundColor","width","height","borderRadius"],"sourceRoot":"../../../../src","sources":["components/BottomSheet/styles.ts"],"mappings":";;AACA,SAASA,GAAG,QAA2B,0BAA0B;AACjE,SACEC,gBAAgB,EAChBC,oBAAoB,EACpBC,kBAAkB,EAClBC,oBAAoB,QACf,yBAAyB;;AAEhC;;AAEA,OAAO,MAAMC,4BAA4B,GAAGL,GAAG,CAAC,CAC9C,iDAAiD,EACjDC,gBAAgB,EAChBC,oBAAoB,CACrB,CAAC;;AAEF;;AAEA,OAAO,MAAMI,yBAAyB,GAAGN,GAAG,CAC1C,CACE,+DAA+D,EAC/DC,gBAAgB,EAChBE,kBAAkB,CACnB,EACD;EACEI,QAAQ,EAAE;IACRC,QAAQ,EAAE;MACRC,IAAI,EAAE,EAAE;MACRC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,QAAQ,EAAE;EACZ;AACF,CACF,CAAC;;AAED;;AAEA,OAAO,MAAMI,0BAA0B,GAAGZ,GAAG,CAAC,CAACC,gBAAgB,EAAE,WAAW,CAAC,CAAC;;AAE9E;;AAEA,OAAO,MAAMY,yBAAyB,GAAGb,GAAG,CAAC,CAC3C,yBAAyB,EACzBC,gBAAgB,EAChBC,oBAAoB,CACrB,CAAC;;AAEF;;AAEA,OAAO,MAAMY,2BAA2B,GAAGd,GAAG,CAAC,CAAC,SAAS,EAAEI,oBAAoB,CAAC,CAAC;;AAEjF;;AAEA,OAAO,MAAMW,6BAA6B,GAAGf,GAAG,CAAC,CAAC,8CAA8C,CAAC,CAAC;AAElG,OAAO,MAAMgB,2BAA2B,GAAGhB,GAAG,CAAC,CAAC,uBAAuB,CAAC,CAAC;;AAEzE;;AAEA,OAAO,MAAMiB,8BAA8B,GAAGjB,GAAG,CAAC,CAAC,yCAAyC,CAAC,CAAC;;AAE9F;;AAEA,OAAO,MAAMkB,4BAA4B,GAAGlB,GAAG,CAAC,CAAC,uBAAuB,CAAC,CAAC;;AAE1E;AACA;AACA;AACA,OAAO,MAAMmB,oBAA+B,GAAG;EAC7CC,eAAe,EAAE,SAAS;EAC1BC,KAAK,EAAE,EAAE;EACTC,MAAM,EAAE,CAAC;EACTC,YAAY,EAAE;AAChB,CAAC","ignoreList":[]}
|
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { forwardRef } from 'react';
|
|
4
|
-
import { Pressable } from 'react-native';
|
|
4
|
+
import { Pressable, Text as RNText } from 'react-native';
|
|
5
5
|
import { createLink } from '@cdx-ui/primitives';
|
|
6
6
|
import { cn } from '@cdx-ui/utils';
|
|
7
|
-
import {
|
|
7
|
+
import { Icon } from '../Icon';
|
|
8
|
+
import { linkRootVariants, linkLabelVariants, linkIconVariants } from './styles';
|
|
8
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
10
|
export { LinkProvider } from '@cdx-ui/primitives';
|
|
10
11
|
const LinkPrimitive = createLink({
|
|
11
12
|
Root: Pressable
|
|
12
13
|
});
|
|
13
|
-
|
|
14
|
+
|
|
15
|
+
// =============================================================================
|
|
16
|
+
// STYLED ROOT COMPONENT
|
|
17
|
+
// =============================================================================
|
|
18
|
+
|
|
19
|
+
const LinkRoot = /*#__PURE__*/forwardRef(({
|
|
14
20
|
className,
|
|
15
21
|
children,
|
|
16
22
|
style,
|
|
@@ -25,5 +31,55 @@ export const Link = /*#__PURE__*/forwardRef(({
|
|
|
25
31
|
children: children
|
|
26
32
|
});
|
|
27
33
|
});
|
|
28
|
-
|
|
34
|
+
LinkRoot.displayName = 'Link';
|
|
35
|
+
|
|
36
|
+
// =============================================================================
|
|
37
|
+
// STYLED LABEL COMPONENT
|
|
38
|
+
// =============================================================================
|
|
39
|
+
|
|
40
|
+
const LinkLabel = /*#__PURE__*/forwardRef(({
|
|
41
|
+
className,
|
|
42
|
+
children,
|
|
43
|
+
style,
|
|
44
|
+
...props
|
|
45
|
+
}, ref) => {
|
|
46
|
+
const computedClassName = cn(linkLabelVariants(), className);
|
|
47
|
+
return /*#__PURE__*/_jsx(RNText, {
|
|
48
|
+
ref: ref,
|
|
49
|
+
className: computedClassName,
|
|
50
|
+
style: style,
|
|
51
|
+
...props,
|
|
52
|
+
children: children
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
LinkLabel.displayName = 'Link.Label';
|
|
56
|
+
|
|
57
|
+
// =============================================================================
|
|
58
|
+
// STYLED ICON COMPONENT
|
|
59
|
+
// =============================================================================
|
|
60
|
+
|
|
61
|
+
const LinkIcon = ({
|
|
62
|
+
className,
|
|
63
|
+
style,
|
|
64
|
+
as,
|
|
65
|
+
...props
|
|
66
|
+
}) => {
|
|
67
|
+
const computedClassName = cn(linkIconVariants(), className);
|
|
68
|
+
return /*#__PURE__*/_jsx(Icon, {
|
|
69
|
+
as: as,
|
|
70
|
+
className: computedClassName,
|
|
71
|
+
style: style,
|
|
72
|
+
...props
|
|
73
|
+
});
|
|
74
|
+
};
|
|
75
|
+
LinkIcon.displayName = 'Link.Icon';
|
|
76
|
+
|
|
77
|
+
// =============================================================================
|
|
78
|
+
// COMPOUND COMPONENT EXPORT
|
|
79
|
+
// =============================================================================
|
|
80
|
+
|
|
81
|
+
export const Link = Object.assign(LinkRoot, {
|
|
82
|
+
Label: LinkLabel,
|
|
83
|
+
Icon: LinkIcon
|
|
84
|
+
});
|
|
29
85
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","Pressable","createLink","cn","linkRootVariants","jsx","_jsx","LinkProvider","LinkPrimitive","Root","
|
|
1
|
+
{"version":3,"names":["forwardRef","Pressable","Text","RNText","createLink","cn","Icon","linkRootVariants","linkLabelVariants","linkIconVariants","jsx","_jsx","LinkProvider","LinkPrimitive","Root","LinkRoot","className","children","style","props","ref","rootClassName","displayName","LinkLabel","computedClassName","LinkIcon","as","Link","Object","assign","Label"],"sourceRoot":"../../../../src","sources":["components/Link/index.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAwB,OAAO;AAClD,SAASC,SAAS,EAAEC,IAAI,IAAIC,MAAM,QAAmC,cAAc;AACnF,SAASC,UAAU,QAAyB,oBAAoB;AAChE,SAASC,EAAE,QAAQ,eAAe;AAClC,SAASC,IAAI,QAAwB,SAAS;AAC9C,SAASC,gBAAgB,EAAEC,iBAAiB,EAAEC,gBAAgB,QAAQ,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEjF,SAASC,YAAY,QAA0C,oBAAoB;AAEnF,MAAMC,aAAa,GAAGT,UAAU,CAAC;EAC/BU,IAAI,EAAEb;AACR,CAAC,CAAC;;AAEF;AACA;AACA;;AAMA,MAAMc,QAAQ,gBAAGf,UAAU,CAAkB,CAAC;EAAEgB,SAAS;EAAEC,QAAQ;EAAEC,KAAK;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAK;EAC9F,MAAMC,aAAa,GAAGhB,EAAE,CAACE,gBAAgB,CAAC,CAAC,EAAES,SAAS,CAAC;EAEvD,oBACEL,IAAA,CAACE,aAAa;IAACO,GAAG,EAAEA,GAAI;IAACJ,SAAS,EAAEK,aAAc;IAACH,KAAK,EAAEA,KAAM;IAAA,GAAKC,KAAK;IAAAF,QAAA,EACvEA;EAAQ,CACI,CAAC;AAEpB,CAAC,CAAC;AAEFF,QAAQ,CAACO,WAAW,GAAG,MAAM;;AAE7B;AACA;AACA;;AAOA,MAAMC,SAAS,gBAAGvB,UAAU,CAC1B,CAAC;EAAEgB,SAAS;EAAEC,QAAQ;EAAEC,KAAK;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAK;EACjD,MAAMI,iBAAiB,GAAGnB,EAAE,CAACG,iBAAiB,CAAC,CAAC,EAAEQ,SAAS,CAAC;EAE5D,oBACEL,IAAA,CAACR,MAAM;IAACiB,GAAG,EAAEA,GAAI;IAACJ,SAAS,EAAEQ,iBAAkB;IAACN,KAAK,EAAEA,KAAM;IAAA,GAAKC,KAAK;IAAAF,QAAA,EACpEA;EAAQ,CACH,CAAC;AAEb,CACF,CAAC;AAEDM,SAAS,CAACD,WAAW,GAAG,YAAY;;AAEpC;AACA;AACA;;AAIA,MAAMG,QAAQ,GAAGA,CAAC;EAAET,SAAS;EAAEE,KAAK;EAAEQ,EAAE;EAAE,GAAGP;AAAqB,CAAC,KAAK;EACtE,MAAMK,iBAAiB,GAAGnB,EAAE,CAACI,gBAAgB,CAAC,CAAC,EAAEO,SAAS,CAAC;EAE3D,oBAAOL,IAAA,CAACL,IAAI;IAACoB,EAAE,EAAEA,EAAG;IAACV,SAAS,EAAEQ,iBAAkB;IAACN,KAAK,EAAEA,KAAM;IAAA,GAAKC;EAAK,CAAG,CAAC;AAChF,CAAC;AAEDM,QAAQ,CAACH,WAAW,GAAG,WAAW;;AAElC;AACA;AACA;;AAOA,OAAO,MAAMK,IAAI,GAAGC,MAAM,CAACC,MAAM,CAACd,QAAQ,EAAE;EAC1Ce,KAAK,EAAEP,SAAS;EAChBjB,IAAI,EAAEmB;AACR,CAAC,CAA0B","ignoreList":[]}
|
|
@@ -2,9 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
import { Platform } from 'react-native';
|
|
4
4
|
import { cva } from 'class-variance-authority';
|
|
5
|
-
import {
|
|
6
|
-
export const linkRootVariants = cva(['flex-row items-center', 'web:outline-none web:focus:outline-none web:focus-visible:outline-none',
|
|
5
|
+
import { TRANSITION_COLORS } from '../../styles/primitives';
|
|
6
|
+
export const linkRootVariants = cva(['flex-row items-center gap-1', 'web:outline-none web:focus:outline-none web:focus-visible:outline-none', 'text-blue-600', 'underline decoration-slate-300 underline-offset-4', TRANSITION_COLORS, Platform.select({
|
|
7
7
|
web: 'data-[hover=true]:decoration-slate-900',
|
|
8
8
|
default: ''
|
|
9
9
|
}), 'web:data-[focus-visible=true]:ring-2 web:data-[focus-visible=true]:ring-slate-400/50 web:data-[focus-visible=true]:ring-offset-2']);
|
|
10
|
+
export const linkLabelVariants = cva(['text-sm font-medium', 'text-blue-600']);
|
|
11
|
+
export const linkIconVariants = cva(['size-4', 'text-blue-600']);
|
|
10
12
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","cva","
|
|
1
|
+
{"version":3,"names":["Platform","cva","TRANSITION_COLORS","linkRootVariants","select","web","default","linkLabelVariants","linkIconVariants"],"sourceRoot":"../../../../src","sources":["components/Link/styles.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,GAAG,QAAQ,0BAA0B;AAC9C,SAASC,iBAAiB,QAAQ,yBAAyB;AAE3D,OAAO,MAAMC,gBAAgB,GAAGF,GAAG,CAAC,CAClC,6BAA6B,EAC7B,wEAAwE,EACxE,eAAe,EACf,mDAAmD,EACnDC,iBAAiB,EACjBF,QAAQ,CAACI,MAAM,CAAC;EACdC,GAAG,EAAE,wCAAwC;EAC7CC,OAAO,EAAE;AACX,CAAC,CAAC,EACF,kIAAkI,CACnI,CAAC;AAEF,OAAO,MAAMC,iBAAiB,GAAGN,GAAG,CAAC,CAAC,qBAAqB,EAAE,eAAe,CAAC,CAAC;AAE9E,OAAO,MAAMO,gBAAgB,GAAGP,GAAG,CAAC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HStack","VStack"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":";;AAAA,cAAc,UAAU;AACxB,cAAc,OAAO;AACrB,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,UAAU;AACxB,cAAc,mBAAmB;AACjC,cAAc,UAAU;AACxB,SAASA,MAAM,EAAEC,MAAM,QAAQ,SAAS;AACxC,cAAc,WAAW;AACzB,cAAc,QAAQ;AACtB,cAAc,QAAQ","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["HStack","VStack"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":";;AAAA,cAAc,UAAU;AACxB,cAAc,eAAe;AAC7B,cAAc,OAAO;AACrB,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,UAAU;AACxB,cAAc,mBAAmB;AACjC,cAAc,UAAU;AACxB,SAASA,MAAM,EAAEC,MAAM,QAAQ,SAAS;AACxC,cAAc,WAAW;AACzB,cAAc,QAAQ;AACtB,cAAc,QAAQ","ignoreList":[]}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import React, { type ReactNode } from 'react';
|
|
2
|
+
import { View, ViewStyle } from 'react-native';
|
|
3
|
+
import { BottomSheetModal, BottomSheetModalProvider, BottomSheetScrollView, BottomSheetView } from '@gorhom/bottom-sheet';
|
|
4
|
+
/** Ref type for BottomSheet; forwards the @gorhom modal ref (present, dismiss, snapToIndex, minimize, restore, etc.). */
|
|
5
|
+
export type BottomSheetModalRef = React.ComponentRef<typeof BottomSheetModal>;
|
|
6
|
+
export interface BottomSheetHeaderProps {
|
|
7
|
+
title?: string;
|
|
8
|
+
subtitle?: string;
|
|
9
|
+
children?: ReactNode;
|
|
10
|
+
className?: string;
|
|
11
|
+
onClose?: () => void;
|
|
12
|
+
closeAccessibilityLabel?: string;
|
|
13
|
+
onBack?: () => void;
|
|
14
|
+
backAccessibilityLabel?: string;
|
|
15
|
+
}
|
|
16
|
+
declare const BottomSheetHeader: React.ForwardRefExoticComponent<BottomSheetHeaderProps & React.RefAttributes<View>>;
|
|
17
|
+
export interface BottomSheetContentProps {
|
|
18
|
+
children?: ReactNode;
|
|
19
|
+
className?: string;
|
|
20
|
+
hasSafeAreaInset?: boolean;
|
|
21
|
+
style?: ViewStyle;
|
|
22
|
+
}
|
|
23
|
+
declare const BottomSheetContent: React.ForwardRefExoticComponent<BottomSheetContentProps & React.RefAttributes<View>>;
|
|
24
|
+
export interface BottomSheetFooterProps {
|
|
25
|
+
children?: ReactNode;
|
|
26
|
+
className?: string;
|
|
27
|
+
style?: ViewStyle;
|
|
28
|
+
}
|
|
29
|
+
declare const BottomSheetFooter: React.ForwardRefExoticComponent<BottomSheetFooterProps & React.RefAttributes<View>>;
|
|
30
|
+
export interface BottomSheetModalProps extends React.ComponentPropsWithoutRef<typeof BottomSheetModal> {
|
|
31
|
+
/** Show the drag handle indicator. When false, `handleComponent` is set to null. @default true */
|
|
32
|
+
handleVisible?: boolean;
|
|
33
|
+
/** Footer content rendered via gorhom's BottomSheetFooter for proper animated positioning and safe-area handling. */
|
|
34
|
+
footer?: ReactNode;
|
|
35
|
+
}
|
|
36
|
+
declare const BottomSheetModalStyled: React.ForwardRefExoticComponent<BottomSheetModalProps & React.RefAttributes<BottomSheetModal<unknown>>>;
|
|
37
|
+
declare function BottomSheetScrollViewStyled({ enableFooterMarginAdjustment, children, ...rest }: React.ComponentPropsWithoutRef<typeof BottomSheetScrollView>): import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
declare namespace BottomSheetScrollViewStyled {
|
|
39
|
+
var displayName: string;
|
|
40
|
+
}
|
|
41
|
+
declare function BottomSheetViewStyled({ enableFooterMarginAdjustment, children, ...rest }: React.ComponentPropsWithoutRef<typeof BottomSheetView>): import("react/jsx-runtime").JSX.Element;
|
|
42
|
+
declare namespace BottomSheetViewStyled {
|
|
43
|
+
var displayName: string;
|
|
44
|
+
}
|
|
45
|
+
interface BottomSheetCompound {
|
|
46
|
+
Modal: typeof BottomSheetModalStyled;
|
|
47
|
+
Header: typeof BottomSheetHeader;
|
|
48
|
+
Content: typeof BottomSheetContent;
|
|
49
|
+
Footer: typeof BottomSheetFooter;
|
|
50
|
+
Provider: typeof BottomSheetModalProvider;
|
|
51
|
+
ScrollView: typeof BottomSheetScrollViewStyled;
|
|
52
|
+
View: typeof BottomSheetViewStyled;
|
|
53
|
+
}
|
|
54
|
+
export declare const BottomSheet: BottomSheetCompound;
|
|
55
|
+
export declare function useBottomSheet(): {
|
|
56
|
+
ref: React.RefObject<BottomSheetModal<unknown> | null>;
|
|
57
|
+
present: () => void | undefined;
|
|
58
|
+
dismiss: () => void | undefined;
|
|
59
|
+
};
|
|
60
|
+
export {};
|
|
61
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/BottomSheet/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAmC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAyB,IAAI,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEtE,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,EAKhB,MAAM,sBAAsB,CAAC;AAmB9B,yHAAyH;AACzH,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE9E,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAwDD,QAAA,MAAM,iBAAiB,qFAAuE,CAAC;AAoC/F,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,QAAA,MAAM,kBAAkB,sFAevB,CAAC;AAOF,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,QAAA,MAAM,iBAAiB,qFAetB,CAAC;AAQF,MAAM,WAAW,qBAAsB,SAAQ,KAAK,CAAC,wBAAwB,CAC3E,OAAO,gBAAgB,CACxB;IACC,kGAAkG;IAClG,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qHAAqH;IACrH,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB;AAgBD,QAAA,MAAM,sBAAsB,yGA0B1B,CAAC;AAQH,iBAAS,2BAA2B,CAAC,EACnC,4BAAmC,EACnC,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,KAAK,CAAC,wBAAwB,CAAC,OAAO,qBAAqB,CAAC,2CAM9D;kBAVQ,2BAA2B;;;AAkBpC,iBAAS,qBAAqB,CAAC,EAC7B,4BAAmC,EACnC,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,KAAK,CAAC,wBAAwB,CAAC,OAAO,eAAe,CAAC,2CAMxD;kBAVQ,qBAAqB;;;AAsB9B,UAAU,mBAAmB;IAC3B,KAAK,EAAE,OAAO,sBAAsB,CAAC;IACrC,MAAM,EAAE,OAAO,iBAAiB,CAAC;IACjC,OAAO,EAAE,OAAO,kBAAkB,CAAC;IACnC,MAAM,EAAE,OAAO,iBAAiB,CAAC;IACjC,QAAQ,EAAE,OAAO,wBAAwB,CAAC;IAC1C,UAAU,EAAE,OAAO,2BAA2B,CAAC;IAC/C,IAAI,EAAE,OAAO,qBAAqB,CAAC;CACpC;AAED,eAAO,MAAM,WAAW,EAQnB,mBAAmB,CAAC;AAIzB,wBAAgB,cAAc;;;;EAG7B"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type ViewStyle } from 'react-native';
|
|
2
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
3
|
+
export declare const bottomSheetContainerVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
4
|
+
export declare const bottomSheetHeaderVariants: (props?: ({
|
|
5
|
+
hasTitle?: boolean | null | undefined;
|
|
6
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
|
+
export declare const bottomSheetContentVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
8
|
+
export declare const bottomSheetFooterVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
9
|
+
export declare const bottomSheetSubtitleVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
10
|
+
export declare const bottomSheetBackButtonVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
11
|
+
export declare const bottomSheetBackIconVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
12
|
+
export declare const bottomSheetCloseButtonVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
13
|
+
export declare const bottomSheetCloseIconVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
14
|
+
export declare const handleIndicatorStyle: ViewStyle;
|
|
15
|
+
export type BottomSheetHeaderVariants = VariantProps<typeof bottomSheetHeaderVariants>;
|
|
16
|
+
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/components/BottomSheet/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAUlE,eAAO,MAAM,4BAA4B,oFAIvC,CAAC;AAIH,eAAO,MAAM,yBAAyB;;8EAiBrC,CAAC;AAIF,eAAO,MAAM,0BAA0B,oFAAuC,CAAC;AAI/E,eAAO,MAAM,yBAAyB,oFAIpC,CAAC;AAIH,eAAO,MAAM,2BAA2B,oFAAyC,CAAC;AAIlF,eAAO,MAAM,6BAA6B,oFAAwD,CAAC;AAEnG,eAAO,MAAM,2BAA2B,oFAAiC,CAAC;AAI1E,eAAO,MAAM,8BAA8B,oFAAmD,CAAC;AAI/F,eAAO,MAAM,4BAA4B,oFAAiC,CAAC;AAK3E,eAAO,MAAM,oBAAoB,EAAE,SAKlC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,YAAY,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
|
|
@@ -1,8 +1,26 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import { Text as RNText, type TextProps, type View } from 'react-native';
|
|
2
3
|
import { type ILinkProps } from '@cdx-ui/primitives';
|
|
4
|
+
import { type IconProps } from '../Icon';
|
|
3
5
|
export { LinkProvider, type LinkConfig, type LinkAction } from '@cdx-ui/primitives';
|
|
4
6
|
export interface LinkProps extends ILinkProps {
|
|
5
7
|
className?: string;
|
|
6
8
|
}
|
|
7
|
-
|
|
9
|
+
declare const LinkRoot: import("react").ForwardRefExoticComponent<LinkProps & import("react").RefAttributes<View>>;
|
|
10
|
+
export interface LinkLabelProps extends TextProps {
|
|
11
|
+
className?: string;
|
|
12
|
+
children?: ReactNode;
|
|
13
|
+
}
|
|
14
|
+
declare const LinkLabel: import("react").ForwardRefExoticComponent<LinkLabelProps & import("react").RefAttributes<RNText>>;
|
|
15
|
+
export interface LinkIconProps extends Omit<IconProps, 'children'> {
|
|
16
|
+
}
|
|
17
|
+
declare const LinkIcon: {
|
|
18
|
+
({ className, style, as, ...props }: LinkIconProps): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
displayName: string;
|
|
20
|
+
};
|
|
21
|
+
type LinkCompoundComponent = typeof LinkRoot & {
|
|
22
|
+
Label: typeof LinkLabel;
|
|
23
|
+
Icon: typeof LinkIcon;
|
|
24
|
+
};
|
|
25
|
+
export declare const Link: LinkCompoundComponent;
|
|
8
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Link/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Link/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAa,IAAI,IAAI,MAAM,EAAE,KAAK,SAAS,EAAE,KAAK,IAAI,EAAE,MAAM,cAAc,CAAC;AACpF,OAAO,EAAc,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,SAAS,CAAC;AAG/C,OAAO,EAAE,YAAY,EAAE,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAUpF,MAAM,WAAW,SAAU,SAAQ,UAAU;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,QAAA,MAAM,QAAQ,4FAQZ,CAAC;AAQH,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,QAAA,MAAM,SAAS,mGAUd,CAAC;AAQF,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;CAAG;AAErE,QAAA,MAAM,QAAQ;yCAAwC,aAAa;;CAIlE,CAAC;AAQF,KAAK,qBAAqB,GAAG,OAAO,QAAQ,GAAG;IAC7C,KAAK,EAAE,OAAO,SAAS,CAAC;IACxB,IAAI,EAAE,OAAO,QAAQ,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,IAAI,EAGX,qBAAqB,CAAC"}
|
|
@@ -1,2 +1,4 @@
|
|
|
1
1
|
export declare const linkRootVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
2
|
+
export declare const linkLabelVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
3
|
+
export declare const linkIconVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
2
4
|
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/components/Link/styles.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,oFAW3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/components/Link/styles.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,oFAW3B,CAAC;AAEH,eAAO,MAAM,iBAAiB,oFAAgD,CAAC;AAE/E,eAAO,MAAM,gBAAgB,oFAAmC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cdx-ui/components",
|
|
3
|
-
"version": "0.0.1-alpha.
|
|
3
|
+
"version": "0.0.1-alpha.21",
|
|
4
4
|
"main": "lib/commonjs/index.js",
|
|
5
5
|
"module": "lib/module/index.js",
|
|
6
6
|
"react-native": "src/index.ts",
|
|
@@ -62,11 +62,12 @@
|
|
|
62
62
|
}
|
|
63
63
|
},
|
|
64
64
|
"dependencies": {
|
|
65
|
+
"@gorhom/bottom-sheet": "^5.2.6",
|
|
65
66
|
"class-variance-authority": "^0.7.1",
|
|
66
67
|
"uniwind": "1.4.1",
|
|
67
|
-
"@cdx-ui/primitives": "0.0.1-alpha.
|
|
68
|
-
"@cdx-ui/utils": "0.0.1-alpha.
|
|
69
|
-
"@cdx-ui/icons": "0.0.1-alpha.
|
|
68
|
+
"@cdx-ui/primitives": "0.0.1-alpha.21",
|
|
69
|
+
"@cdx-ui/utils": "0.0.1-alpha.21",
|
|
70
|
+
"@cdx-ui/icons": "0.0.1-alpha.21"
|
|
70
71
|
},
|
|
71
72
|
"devDependencies": {
|
|
72
73
|
"@types/react": "*",
|