@donotdev/expo 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/__tests__/components/atomic.test.d.ts +10 -0
- package/dist/__tests__/components/atomic.test.d.ts.map +1 -0
- package/dist/__tests__/providers/ExpoAppProviders.test.d.ts +10 -0
- package/dist/__tests__/providers/ExpoAppProviders.test.d.ts.map +1 -0
- package/dist/__tests__/setup.d.ts +10 -0
- package/dist/__tests__/setup.d.ts.map +1 -0
- package/dist/__tests__/test-utils.d.ts +22 -0
- package/dist/__tests__/test-utils.d.ts.map +1 -0
- package/dist/atomic/Accordion/index.d.ts +65 -0
- package/dist/atomic/Accordion/index.d.ts.map +1 -0
- package/dist/atomic/Alert/index.d.ts +69 -0
- package/dist/atomic/Alert/index.d.ts.map +1 -0
- package/dist/atomic/AlertDialog/index.d.ts +83 -0
- package/dist/atomic/AlertDialog/index.d.ts.map +1 -0
- package/dist/atomic/Avatar/index.d.ts +53 -0
- package/dist/atomic/Avatar/index.d.ts.map +1 -0
- package/dist/atomic/Badge/index.d.ts +61 -0
- package/dist/atomic/Badge/index.d.ts.map +1 -0
- package/dist/atomic/Blockquote/index.d.ts +70 -0
- package/dist/atomic/Blockquote/index.d.ts.map +1 -0
- package/dist/atomic/Button/index.d.ts +117 -0
- package/dist/atomic/Button/index.d.ts.map +1 -0
- package/dist/atomic/Calendar/index.d.ts +55 -0
- package/dist/atomic/Calendar/index.d.ts.map +1 -0
- package/dist/atomic/CallToAction/index.d.ts +56 -0
- package/dist/atomic/CallToAction/index.d.ts.map +1 -0
- package/dist/atomic/Card/index.d.ts +102 -0
- package/dist/atomic/Card/index.d.ts.map +1 -0
- package/dist/atomic/Checkbox/index.d.ts +79 -0
- package/dist/atomic/Checkbox/index.d.ts.map +1 -0
- package/dist/atomic/Collapsible/index.d.ts +56 -0
- package/dist/atomic/Collapsible/index.d.ts.map +1 -0
- package/dist/atomic/Combobox/index.d.ts +137 -0
- package/dist/atomic/Combobox/index.d.ts.map +1 -0
- package/dist/atomic/Command/index.d.ts +94 -0
- package/dist/atomic/Command/index.d.ts.map +1 -0
- package/dist/atomic/CommandDialog/index.d.ts +62 -0
- package/dist/atomic/CommandDialog/index.d.ts.map +1 -0
- package/dist/atomic/ContextMenu/index.d.ts +60 -0
- package/dist/atomic/ContextMenu/index.d.ts.map +1 -0
- package/dist/atomic/CopyToClipboard/index.d.ts +78 -0
- package/dist/atomic/CopyToClipboard/index.d.ts.map +1 -0
- package/dist/atomic/DescriptionList/index.d.ts +60 -0
- package/dist/atomic/DescriptionList/index.d.ts.map +1 -0
- package/dist/atomic/Dialog/index.d.ts +105 -0
- package/dist/atomic/Dialog/index.d.ts.map +1 -0
- package/dist/atomic/DropdownMenu/index.d.ts +85 -0
- package/dist/atomic/DropdownMenu/index.d.ts.map +1 -0
- package/dist/atomic/DualCard/index.d.ts +101 -0
- package/dist/atomic/DualCard/index.d.ts.map +1 -0
- package/dist/atomic/FeatureFallback/index.d.ts +75 -0
- package/dist/atomic/FeatureFallback/index.d.ts.map +1 -0
- package/dist/atomic/FileButton/index.d.ts +55 -0
- package/dist/atomic/FileButton/index.d.ts.map +1 -0
- package/dist/atomic/Grid/index.d.ts +93 -0
- package/dist/atomic/Grid/index.d.ts.map +1 -0
- package/dist/atomic/HeroSection/index.d.ts +72 -0
- package/dist/atomic/HeroSection/index.d.ts.map +1 -0
- package/dist/atomic/HoverCard/index.d.ts +70 -0
- package/dist/atomic/HoverCard/index.d.ts.map +1 -0
- package/dist/atomic/Icons/index.d.ts +55 -0
- package/dist/atomic/Icons/index.d.ts.map +1 -0
- package/dist/atomic/InfiniteScroll/index.d.ts +62 -0
- package/dist/atomic/InfiniteScroll/index.d.ts.map +1 -0
- package/dist/atomic/Input/index.d.ts +100 -0
- package/dist/atomic/Input/index.d.ts.map +1 -0
- package/dist/atomic/Label/index.d.ts +49 -0
- package/dist/atomic/Label/index.d.ts.map +1 -0
- package/dist/atomic/List/index.d.ts +62 -0
- package/dist/atomic/List/index.d.ts.map +1 -0
- package/dist/atomic/NavigationMenu/index.d.ts +81 -0
- package/dist/atomic/NavigationMenu/index.d.ts.map +1 -0
- package/dist/atomic/Pagination/index.d.ts +86 -0
- package/dist/atomic/Pagination/index.d.ts.map +1 -0
- package/dist/atomic/PasswordInput/index.d.ts +95 -0
- package/dist/atomic/PasswordInput/index.d.ts.map +1 -0
- package/dist/atomic/Popover/index.d.ts +98 -0
- package/dist/atomic/Popover/index.d.ts.map +1 -0
- package/dist/atomic/Portal/index.d.ts +41 -0
- package/dist/atomic/Portal/index.d.ts.map +1 -0
- package/dist/atomic/PortalButton/index.d.ts +54 -0
- package/dist/atomic/PortalButton/index.d.ts.map +1 -0
- package/dist/atomic/Progress/index.d.ts +59 -0
- package/dist/atomic/Progress/index.d.ts.map +1 -0
- package/dist/atomic/RadioGroup/index.d.ts +91 -0
- package/dist/atomic/RadioGroup/index.d.ts.map +1 -0
- package/dist/atomic/RangeInput/index.d.ts +117 -0
- package/dist/atomic/RangeInput/index.d.ts.map +1 -0
- package/dist/atomic/Rating/index.d.ts +74 -0
- package/dist/atomic/Rating/index.d.ts.map +1 -0
- package/dist/atomic/ScrollArea/index.d.ts +59 -0
- package/dist/atomic/ScrollArea/index.d.ts.map +1 -0
- package/dist/atomic/Section/index.d.ts +83 -0
- package/dist/atomic/Section/index.d.ts.map +1 -0
- package/dist/atomic/Select/index.d.ts +116 -0
- package/dist/atomic/Select/index.d.ts.map +1 -0
- package/dist/atomic/Separator/index.d.ts +58 -0
- package/dist/atomic/Separator/index.d.ts.map +1 -0
- package/dist/atomic/Sheet/index.d.ts +106 -0
- package/dist/atomic/Sheet/index.d.ts.map +1 -0
- package/dist/atomic/Skeleton/index.d.ts +59 -0
- package/dist/atomic/Skeleton/index.d.ts.map +1 -0
- package/dist/atomic/Slider/index.d.ts +101 -0
- package/dist/atomic/Slider/index.d.ts.map +1 -0
- package/dist/atomic/Slot/index.d.ts +28 -0
- package/dist/atomic/Slot/index.d.ts.map +1 -0
- package/dist/atomic/Spinner/index.d.ts +52 -0
- package/dist/atomic/Spinner/index.d.ts.map +1 -0
- package/dist/atomic/Stack/index.d.ts +123 -0
- package/dist/atomic/Stack/index.d.ts.map +1 -0
- package/dist/atomic/Stepper/index.d.ts +102 -0
- package/dist/atomic/Stepper/index.d.ts.map +1 -0
- package/dist/atomic/Switch/index.d.ts +88 -0
- package/dist/atomic/Switch/index.d.ts.map +1 -0
- package/dist/atomic/Table/index.d.ts +107 -0
- package/dist/atomic/Table/index.d.ts.map +1 -0
- package/dist/atomic/Tabs/index.d.ts +91 -0
- package/dist/atomic/Tabs/index.d.ts.map +1 -0
- package/dist/atomic/Tag/index.d.ts +78 -0
- package/dist/atomic/Tag/index.d.ts.map +1 -0
- package/dist/atomic/Text/index.d.ts +81 -0
- package/dist/atomic/Text/index.d.ts.map +1 -0
- package/dist/atomic/Textarea/index.d.ts +66 -0
- package/dist/atomic/Textarea/index.d.ts.map +1 -0
- package/dist/atomic/Toaster/index.d.ts +69 -0
- package/dist/atomic/Toaster/index.d.ts.map +1 -0
- package/dist/atomic/Toggle/index.d.ts +76 -0
- package/dist/atomic/Toggle/index.d.ts.map +1 -0
- package/dist/atomic/ToggleGroup/index.d.ts +82 -0
- package/dist/atomic/ToggleGroup/index.d.ts.map +1 -0
- package/dist/atomic/Tooltip/index.d.ts +68 -0
- package/dist/atomic/Tooltip/index.d.ts.map +1 -0
- package/dist/atomic/VideoPlayer/index.d.ts +68 -0
- package/dist/atomic/VideoPlayer/index.d.ts.map +1 -0
- package/dist/atomic/VisuallyHidden/index.d.ts +33 -0
- package/dist/atomic/VisuallyHidden/index.d.ts.map +1 -0
- package/dist/atomic/index.d.ts +146 -0
- package/dist/atomic/index.d.ts.map +1 -0
- package/dist/crud/components/DateFilter.d.ts +29 -0
- package/dist/crud/components/DateFilter.d.ts.map +1 -0
- package/dist/crud/components/DisplayFieldRenderer.d.ts +29 -0
- package/dist/crud/components/DisplayFieldRenderer.d.ts.map +1 -0
- package/dist/crud/components/EntityCardList.d.ts +25 -0
- package/dist/crud/components/EntityCardList.d.ts.map +1 -0
- package/dist/crud/components/EntityDisplayRenderer.d.ts +26 -0
- package/dist/crud/components/EntityDisplayRenderer.d.ts.map +1 -0
- package/dist/crud/components/EntityFilters.d.ts +40 -0
- package/dist/crud/components/EntityFilters.d.ts.map +1 -0
- package/dist/crud/components/EntityFormRenderer.d.ts +66 -0
- package/dist/crud/components/EntityFormRenderer.d.ts.map +1 -0
- package/dist/crud/components/EntityList.d.ts +23 -0
- package/dist/crud/components/EntityList.d.ts.map +1 -0
- package/dist/crud/components/FormFieldRenderer.d.ts +38 -0
- package/dist/crud/components/FormFieldRenderer.d.ts.map +1 -0
- package/dist/crud/components/FormLayout.d.ts +33 -0
- package/dist/crud/components/FormLayout.d.ts.map +1 -0
- package/dist/crud/components/index.d.ts +27 -0
- package/dist/crud/components/index.d.ts.map +1 -0
- package/dist/crud/contexts/UploadContext.d.ts +22 -0
- package/dist/crud/contexts/UploadContext.d.ts.map +1 -0
- package/dist/crud/forms/hooks/useEntityForm.d.ts +11 -0
- package/dist/crud/forms/hooks/useEntityForm.d.ts.map +1 -0
- package/dist/crud/hooks/useUnsavedChangesWarning.d.ts +23 -0
- package/dist/crud/hooks/useUnsavedChangesWarning.d.ts.map +1 -0
- package/dist/crud/index.d.ts +17 -0
- package/dist/crud/index.d.ts.map +1 -0
- package/dist/crud/stores/index.d.ts +11 -0
- package/dist/crud/stores/index.d.ts.map +1 -0
- package/dist/features/auth/components/AuthPartnerButton.d.ts +31 -0
- package/dist/features/auth/components/AuthPartnerButton.d.ts.map +1 -0
- package/dist/features/auth/components/ConfirmDeleteDialog.d.ts +30 -0
- package/dist/features/auth/components/ConfirmDeleteDialog.d.ts.map +1 -0
- package/dist/features/auth/components/FeatureGuard.d.ts +53 -0
- package/dist/features/auth/components/FeatureGuard.d.ts.map +1 -0
- package/dist/features/auth/components/GoogleOneTap.d.ts +19 -0
- package/dist/features/auth/components/GoogleOneTap.d.ts.map +1 -0
- package/dist/features/auth/components/LoginModal.d.ts +18 -0
- package/dist/features/auth/components/LoginModal.d.ts.map +1 -0
- package/dist/features/auth/components/MultipleAuthProviders.d.ts +37 -0
- package/dist/features/auth/components/MultipleAuthProviders.d.ts.map +1 -0
- package/dist/features/auth/components/ReauthDialog.d.ts +30 -0
- package/dist/features/auth/components/ReauthDialog.d.ts.map +1 -0
- package/dist/features/auth/components/index.d.ts +22 -0
- package/dist/features/auth/components/index.d.ts.map +1 -0
- package/dist/features/auth/hooks/index.d.ts +14 -0
- package/dist/features/auth/hooks/index.d.ts.map +1 -0
- package/dist/features/auth/hooks/useAuthState.d.ts +29 -0
- package/dist/features/auth/hooks/useAuthState.d.ts.map +1 -0
- package/dist/features/auth/hooks/useCanAccess.d.ts +25 -0
- package/dist/features/auth/hooks/useCanAccess.d.ts.map +1 -0
- package/dist/features/auth/hooks/useHasRole.d.ts +26 -0
- package/dist/features/auth/hooks/useHasRole.d.ts.map +1 -0
- package/dist/features/auth/hooks/useUserRole.d.ts +25 -0
- package/dist/features/auth/hooks/useUserRole.d.ts.map +1 -0
- package/dist/features/auth/index.d.ts +16 -0
- package/dist/features/auth/index.d.ts.map +1 -0
- package/dist/features/billing/components/ProductCard.d.ts +37 -0
- package/dist/features/billing/components/ProductCard.d.ts.map +1 -0
- package/dist/features/billing/components/SecurityNotice.d.ts +26 -0
- package/dist/features/billing/components/SecurityNotice.d.ts.map +1 -0
- package/dist/features/billing/components/StripeCheckoutButton.d.ts +41 -0
- package/dist/features/billing/components/StripeCheckoutButton.d.ts.map +1 -0
- package/dist/features/billing/components/SubscriptionManager.d.ts +29 -0
- package/dist/features/billing/components/SubscriptionManager.d.ts.map +1 -0
- package/dist/features/billing/components/index.d.ts +17 -0
- package/dist/features/billing/components/index.d.ts.map +1 -0
- package/dist/features/billing/index.d.ts +12 -0
- package/dist/features/billing/index.d.ts.map +1 -0
- package/dist/features/index.d.ts +12 -0
- package/dist/features/index.d.ts.map +1 -0
- package/dist/features/oauth/components/MultipleOAuthProviders.d.ts +42 -0
- package/dist/features/oauth/components/MultipleOAuthProviders.d.ts.map +1 -0
- package/dist/features/oauth/components/OAuthConnectionModal.d.ts +21 -0
- package/dist/features/oauth/components/OAuthConnectionModal.d.ts.map +1 -0
- package/dist/features/oauth/components/OAuthFallback.d.ts +22 -0
- package/dist/features/oauth/components/OAuthFallback.d.ts.map +1 -0
- package/dist/features/oauth/components/OAuthPartnerButton.d.ts +35 -0
- package/dist/features/oauth/components/OAuthPartnerButton.d.ts.map +1 -0
- package/dist/features/oauth/components/index.d.ts +17 -0
- package/dist/features/oauth/components/index.d.ts.map +1 -0
- package/dist/features/oauth/index.d.ts +11 -0
- package/dist/features/oauth/index.d.ts.map +1 -0
- package/dist/firebase/authPersistence.d.ts +23 -0
- package/dist/firebase/authPersistence.d.ts.map +1 -0
- package/dist/firebase/index.d.ts +10 -0
- package/dist/firebase/index.d.ts.map +1 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/providers/ExpoAppProviders.d.ts +46 -0
- package/dist/providers/ExpoAppProviders.d.ts.map +1 -0
- package/dist/routing/components.d.ts +26 -0
- package/dist/routing/components.d.ts.map +1 -0
- package/dist/routing/hooks.d.ts +87 -0
- package/dist/routing/hooks.d.ts.map +1 -0
- package/dist/routing/index.d.ts +11 -0
- package/dist/routing/index.d.ts.map +1 -0
- package/dist/routing/utils/useFormStoreSafe.d.ts +15 -0
- package/dist/routing/utils/useFormStoreSafe.d.ts.map +1 -0
- package/dist/storage/AsyncStorageStrategy.d.ts +55 -0
- package/dist/storage/AsyncStorageStrategy.d.ts.map +1 -0
- package/dist/storage/zustandAsyncStorage.d.ts +22 -0
- package/dist/storage/zustandAsyncStorage.d.ts.map +1 -0
- package/dist/theme/ThemeProvider.d.ts +111 -0
- package/dist/theme/ThemeProvider.d.ts.map +1 -0
- package/dist/theme/index.d.ts +8 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/tokens.d.ts +152 -0
- package/dist/theme/tokens.d.ts.map +1 -0
- package/dist/utils/constants.d.ts +73 -0
- package/dist/utils/constants.d.ts.map +1 -0
- package/dist/utils/helpers.d.ts +39 -0
- package/dist/utils/helpers.d.ts.map +1 -0
- package/dist/utils/index.d.ts +9 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/theme-helpers.d.ts +29 -0
- package/dist/utils/theme-helpers.d.ts.map +1 -0
- package/dist/utils/useAuthSafe.d.ts +8 -0
- package/dist/utils/useAuthSafe.d.ts.map +1 -0
- package/dist/utils/variants.d.ts +25 -0
- package/dist/utils/variants.d.ts.map +1 -0
- package/package.json +85 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview HeroSection component
|
|
3
|
+
* @description Hero section with title, subtitle, and optional badge
|
|
4
|
+
*
|
|
5
|
+
* @version 0.0.1
|
|
6
|
+
* @since 0.0.1
|
|
7
|
+
* @author AMBROISE PARK Consulting
|
|
8
|
+
*/
|
|
9
|
+
import { type ViewStyle } from 'react-native';
|
|
10
|
+
import type { ReactNode } from 'react';
|
|
11
|
+
/**
|
|
12
|
+
* HeroSection component props interface
|
|
13
|
+
*/
|
|
14
|
+
export interface HeroSectionProps {
|
|
15
|
+
/**
|
|
16
|
+
* Badge text
|
|
17
|
+
*/
|
|
18
|
+
badge?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Hero title (renders as h1)
|
|
21
|
+
*/
|
|
22
|
+
title?: string | ReactNode;
|
|
23
|
+
/**
|
|
24
|
+
* Hero subtitle
|
|
25
|
+
*/
|
|
26
|
+
subtitle?: string | ReactNode;
|
|
27
|
+
/**
|
|
28
|
+
* Full viewport height
|
|
29
|
+
* @default false
|
|
30
|
+
*/
|
|
31
|
+
fullHeight?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Content alignment
|
|
34
|
+
* @default 'center'
|
|
35
|
+
*/
|
|
36
|
+
align?: 'start' | 'center' | 'end';
|
|
37
|
+
/**
|
|
38
|
+
* Variant style
|
|
39
|
+
* @default 'primary'
|
|
40
|
+
*/
|
|
41
|
+
variant?: 'primary' | 'subtle' | 'accent';
|
|
42
|
+
/**
|
|
43
|
+
* Content
|
|
44
|
+
*/
|
|
45
|
+
children?: ReactNode;
|
|
46
|
+
/**
|
|
47
|
+
* Additional style
|
|
48
|
+
*/
|
|
49
|
+
style?: ViewStyle;
|
|
50
|
+
/**
|
|
51
|
+
* Test ID for testing
|
|
52
|
+
*/
|
|
53
|
+
testID?: string;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Hero section with title, subtitle, and optional badge.
|
|
57
|
+
*
|
|
58
|
+
* @component
|
|
59
|
+
* @example
|
|
60
|
+
* ```tsx
|
|
61
|
+
* <HeroSection
|
|
62
|
+
* title="Build Faster"
|
|
63
|
+
* subtitle="The ultimate framework"
|
|
64
|
+
* badge="New v2.0"
|
|
65
|
+
* >
|
|
66
|
+
* <Button>Get Started</Button>
|
|
67
|
+
* </HeroSection>
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
declare const HeroSection: ({ badge, title, subtitle, fullHeight, align, variant, children, style, testID, }: HeroSectionProps) => import("react/jsx-runtime").JSX.Element;
|
|
71
|
+
export default HeroSection;
|
|
72
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/HeroSection/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAOhE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC1C;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAoBD;;;;;;;;;;;;;;GAcG;AACH,QAAA,MAAM,WAAW,GAAI,kFAUlB,gBAAgB,4CAmDlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview HoverCard component
|
|
3
|
+
* @description Hover card component (press on mobile)
|
|
4
|
+
*
|
|
5
|
+
* @version 0.0.1
|
|
6
|
+
* @since 0.0.1
|
|
7
|
+
* @author AMBROISE PARK Consulting
|
|
8
|
+
*/
|
|
9
|
+
import { type ViewStyle } from 'react-native';
|
|
10
|
+
import type { ReactNode } from 'react';
|
|
11
|
+
/**
|
|
12
|
+
* HoverCard component props interface
|
|
13
|
+
*/
|
|
14
|
+
export interface HoverCardProps {
|
|
15
|
+
/**
|
|
16
|
+
* Trigger element
|
|
17
|
+
*/
|
|
18
|
+
trigger?: ReactNode;
|
|
19
|
+
/**
|
|
20
|
+
* Trigger content (alternative to trigger prop)
|
|
21
|
+
*/
|
|
22
|
+
children?: ReactNode;
|
|
23
|
+
/**
|
|
24
|
+
* Card content
|
|
25
|
+
*/
|
|
26
|
+
content: ReactNode;
|
|
27
|
+
/**
|
|
28
|
+
* Controlled open state
|
|
29
|
+
*/
|
|
30
|
+
open?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Callback when open state changes
|
|
33
|
+
*/
|
|
34
|
+
onOpenChange?: (open: boolean) => void;
|
|
35
|
+
/**
|
|
36
|
+
* Content alignment relative to trigger
|
|
37
|
+
* @default 'center'
|
|
38
|
+
*/
|
|
39
|
+
align?: 'start' | 'center' | 'end';
|
|
40
|
+
/**
|
|
41
|
+
* Side to display the card
|
|
42
|
+
* @default 'bottom'
|
|
43
|
+
*/
|
|
44
|
+
side?: 'top' | 'bottom' | 'left' | 'right';
|
|
45
|
+
/**
|
|
46
|
+
* Offset from the trigger in pixels
|
|
47
|
+
*/
|
|
48
|
+
sideOffset?: number;
|
|
49
|
+
/**
|
|
50
|
+
* Additional style
|
|
51
|
+
*/
|
|
52
|
+
style?: ViewStyle;
|
|
53
|
+
/**
|
|
54
|
+
* Test ID for testing
|
|
55
|
+
*/
|
|
56
|
+
testID?: string;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Hover card component (press on mobile, hover on web).
|
|
60
|
+
* Uses Popover on mobile.
|
|
61
|
+
*
|
|
62
|
+
* @component
|
|
63
|
+
* @example
|
|
64
|
+
* ```tsx
|
|
65
|
+
* <HoverCard trigger={<Text>Hover me</Text>} content={<Text>Card content</Text>} />
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
declare const HoverCard: ({ trigger, children, content, open, onOpenChange, align, side, sideOffset, style, testID, }: HoverCardProps) => import("react/jsx-runtime").JSX.Element;
|
|
69
|
+
export default HoverCard;
|
|
70
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/HoverCard/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAGH,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAKtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;OAEG;IACH,OAAO,EAAE,SAAS,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC;;;OAGG;IACH,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC3C;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;GASG;AACH,QAAA,MAAM,SAAS,GAAI,6FAWhB,cAAc,4CAgBhB,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Icon component for Expo
|
|
3
|
+
* @description Uses @expo/vector-icons (bundled with Expo) for icon rendering.
|
|
4
|
+
* Falls back to text when icon name is not recognized.
|
|
5
|
+
*
|
|
6
|
+
* @version 0.0.2
|
|
7
|
+
* @since 0.0.1
|
|
8
|
+
* @author AMBROISE PARK Consulting
|
|
9
|
+
*/
|
|
10
|
+
import { type TextStyle } from 'react-native';
|
|
11
|
+
import type { ReactNode } from 'react';
|
|
12
|
+
/**
|
|
13
|
+
* Icon component props interface
|
|
14
|
+
*/
|
|
15
|
+
export interface IconProps {
|
|
16
|
+
/**
|
|
17
|
+
* MaterialIcons icon name (e.g. 'home', 'search', 'settings')
|
|
18
|
+
*/
|
|
19
|
+
name?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Icon size
|
|
22
|
+
* @default 24
|
|
23
|
+
*/
|
|
24
|
+
size?: number;
|
|
25
|
+
/**
|
|
26
|
+
* Icon color
|
|
27
|
+
*/
|
|
28
|
+
color?: string;
|
|
29
|
+
/**
|
|
30
|
+
* Custom icon component (overrides name)
|
|
31
|
+
*/
|
|
32
|
+
component?: ReactNode;
|
|
33
|
+
/**
|
|
34
|
+
* Additional style
|
|
35
|
+
*/
|
|
36
|
+
style?: TextStyle;
|
|
37
|
+
/**
|
|
38
|
+
* Test ID for testing
|
|
39
|
+
*/
|
|
40
|
+
testID?: string;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Icon component using @expo/vector-icons MaterialIcons.
|
|
44
|
+
*
|
|
45
|
+
* @component
|
|
46
|
+
* @example
|
|
47
|
+
* ```tsx
|
|
48
|
+
* <Icon name="home" size={24} color="#000" />
|
|
49
|
+
* <Icon name="search" size={20} color={theme.colors.primary} />
|
|
50
|
+
* <Icon component={<CustomSvg />} />
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
declare const Icon: ({ name, size, color, component, style, testID, }: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
54
|
+
export default Icon;
|
|
55
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/Icons/index.tsx"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,QAAA,MAAM,IAAI,GAAI,kDAOX,SAAS,4CAcX,CAAC;AAEF,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview InfiniteScroll component
|
|
3
|
+
* @description Infinite scroll component for loading more data
|
|
4
|
+
*
|
|
5
|
+
* @version 0.0.1
|
|
6
|
+
* @since 0.0.1
|
|
7
|
+
* @author AMBROISE PARK Consulting
|
|
8
|
+
*/
|
|
9
|
+
import { type ScrollViewProps, type ViewStyle } from 'react-native';
|
|
10
|
+
import type { ReactNode } from 'react';
|
|
11
|
+
/**
|
|
12
|
+
* InfiniteScroll component props interface
|
|
13
|
+
*/
|
|
14
|
+
export interface InfiniteScrollProps extends ScrollViewProps {
|
|
15
|
+
/**
|
|
16
|
+
* Whether more data is loading
|
|
17
|
+
*/
|
|
18
|
+
loading?: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Whether there is more data to load
|
|
21
|
+
*/
|
|
22
|
+
hasMore?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Callback when more data should be loaded
|
|
25
|
+
*/
|
|
26
|
+
onLoadMore?: () => void;
|
|
27
|
+
/**
|
|
28
|
+
* Threshold (in pixels) before triggering load more
|
|
29
|
+
* @default 200
|
|
30
|
+
*/
|
|
31
|
+
threshold?: number;
|
|
32
|
+
/**
|
|
33
|
+
* ScrollView children
|
|
34
|
+
*/
|
|
35
|
+
children: ReactNode;
|
|
36
|
+
/**
|
|
37
|
+
* Additional style
|
|
38
|
+
*/
|
|
39
|
+
style?: ViewStyle;
|
|
40
|
+
/**
|
|
41
|
+
* Test ID for testing
|
|
42
|
+
*/
|
|
43
|
+
testID?: string;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Infinite scroll component for loading more data.
|
|
47
|
+
*
|
|
48
|
+
* @component
|
|
49
|
+
* @example
|
|
50
|
+
* ```tsx
|
|
51
|
+
* <InfiniteScroll
|
|
52
|
+
* loading={loading}
|
|
53
|
+
* hasMore={hasMore}
|
|
54
|
+
* onLoadMore={loadMore}
|
|
55
|
+
* >
|
|
56
|
+
* {items.map(item => <Item key={item.id} />)}
|
|
57
|
+
* </InfiniteScroll>
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
declare const InfiniteScroll: ({ loading, hasMore, onLoadMore, threshold, children, style, testID, ...scrollViewProps }: InfiniteScrollProps) => import("react/jsx-runtime").JSX.Element;
|
|
61
|
+
export default InfiniteScroll;
|
|
62
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/InfiniteScroll/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAGH,OAAO,EAAc,KAAK,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAMhF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;GAcG;AACH,QAAA,MAAM,cAAc,GAAI,0FASrB,mBAAmB,4CAqCrB,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Input component
|
|
3
|
+
* @description Accessible input component with mobile-friendly touch targets and icon support
|
|
4
|
+
*
|
|
5
|
+
* @version 0.0.1
|
|
6
|
+
* @since 0.0.1
|
|
7
|
+
* @author AMBROISE PARK Consulting
|
|
8
|
+
*/
|
|
9
|
+
import { type TextInputProps, type ViewStyle, type TextStyle } from 'react-native';
|
|
10
|
+
import type { ReactNode } from 'react';
|
|
11
|
+
/**
|
|
12
|
+
* Input component props interface
|
|
13
|
+
*/
|
|
14
|
+
export interface InputProps extends Omit<TextInputProps, 'style'> {
|
|
15
|
+
/**
|
|
16
|
+
* Label text (shown above input)
|
|
17
|
+
*/
|
|
18
|
+
label?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Placeholder text
|
|
21
|
+
*/
|
|
22
|
+
placeholder?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Icon rendered alongside the input
|
|
25
|
+
*/
|
|
26
|
+
icon?: ReactNode;
|
|
27
|
+
/**
|
|
28
|
+
* Places icon after the input instead of before
|
|
29
|
+
* @default false
|
|
30
|
+
*/
|
|
31
|
+
iconEnd?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Whether the input is disabled
|
|
34
|
+
* @default false
|
|
35
|
+
*/
|
|
36
|
+
disabled?: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Whether the field is required - shows asterisk on label
|
|
39
|
+
* @default false
|
|
40
|
+
*/
|
|
41
|
+
required?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Error message (shown below input)
|
|
44
|
+
*/
|
|
45
|
+
error?: string;
|
|
46
|
+
/**
|
|
47
|
+
* Additional container style
|
|
48
|
+
*/
|
|
49
|
+
containerStyle?: ViewStyle;
|
|
50
|
+
/**
|
|
51
|
+
* Additional input style
|
|
52
|
+
*/
|
|
53
|
+
inputStyle?: TextStyle;
|
|
54
|
+
/**
|
|
55
|
+
* Test ID for testing
|
|
56
|
+
*/
|
|
57
|
+
testID?: string;
|
|
58
|
+
/**
|
|
59
|
+
* Form name attribute (for API parity with web)
|
|
60
|
+
*/
|
|
61
|
+
name?: string;
|
|
62
|
+
/**
|
|
63
|
+
* Input type (for API parity with web)
|
|
64
|
+
*/
|
|
65
|
+
type?: string;
|
|
66
|
+
/**
|
|
67
|
+
* Checked state (for checkbox/radio type - for API parity with web)
|
|
68
|
+
*/
|
|
69
|
+
checked?: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Maximum value (for number type - for API parity with web)
|
|
72
|
+
*/
|
|
73
|
+
max?: number | string;
|
|
74
|
+
/**
|
|
75
|
+
* Minimum value (for number type - for API parity with web)
|
|
76
|
+
*/
|
|
77
|
+
min?: number | string;
|
|
78
|
+
/**
|
|
79
|
+
* Step value (for number type - for API parity with web)
|
|
80
|
+
*/
|
|
81
|
+
step?: number | string;
|
|
82
|
+
/**
|
|
83
|
+
* Style prop (for API parity with web, maps to inputStyle)
|
|
84
|
+
*/
|
|
85
|
+
style?: TextStyle;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Accessible input component with mobile-friendly touch targets.
|
|
89
|
+
*
|
|
90
|
+
* @component
|
|
91
|
+
* @example
|
|
92
|
+
* ```tsx
|
|
93
|
+
* <Input placeholder="Enter your email" />
|
|
94
|
+
* <Input label="Email" placeholder="Enter your email" />
|
|
95
|
+
* <Input label="Email" error="Invalid email" />
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
declare const Input: ({ label, placeholder, icon, iconEnd, disabled, required, error, containerStyle, inputStyle, name, type, checked, max, min, step, style, testID, ...textInputProps }: InputProps) => import("react/jsx-runtime").JSX.Element;
|
|
99
|
+
export default Input;
|
|
100
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/Input/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAOtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;IAC/D;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAqCD;;;;;;;;;;GAUG;AACH,QAAA,MAAM,KAAK,GAAI,qKAmBZ,UAAU,4CA6DZ,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Label component
|
|
3
|
+
* @description Accessible label component
|
|
4
|
+
*
|
|
5
|
+
* @version 0.0.1
|
|
6
|
+
* @since 0.0.1
|
|
7
|
+
* @author AMBROISE PARK Consulting
|
|
8
|
+
*/
|
|
9
|
+
import { type TextStyle } from 'react-native';
|
|
10
|
+
import type { ReactNode } from 'react';
|
|
11
|
+
/**
|
|
12
|
+
* Label component props interface
|
|
13
|
+
*/
|
|
14
|
+
export interface LabelProps {
|
|
15
|
+
/**
|
|
16
|
+
* Label text
|
|
17
|
+
*/
|
|
18
|
+
children: ReactNode;
|
|
19
|
+
/**
|
|
20
|
+
* Icon rendered alongside the label text
|
|
21
|
+
*/
|
|
22
|
+
icon?: ReactNode;
|
|
23
|
+
/**
|
|
24
|
+
* Places icon after the label text instead of before
|
|
25
|
+
* @default false
|
|
26
|
+
*/
|
|
27
|
+
iconEnd?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Removes bold/medium font weight when true
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
32
|
+
plain?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Whether the field is required - shows asterisk indicator
|
|
35
|
+
* @default false
|
|
36
|
+
*/
|
|
37
|
+
required?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Additional style
|
|
40
|
+
*/
|
|
41
|
+
style?: TextStyle;
|
|
42
|
+
/**
|
|
43
|
+
* Test ID for testing
|
|
44
|
+
*/
|
|
45
|
+
testID?: string;
|
|
46
|
+
}
|
|
47
|
+
declare const Label: ({ children, icon, iconEnd, plain, required, style, testID, }: LabelProps) => import("react/jsx-runtime").JSX.Element;
|
|
48
|
+
export default Label;
|
|
49
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/Label/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAOpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;IACpB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAqBD,QAAA,MAAM,KAAK,GAAI,8DAQZ,UAAU,4CA8BZ,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview List component
|
|
3
|
+
* @description Simple list component for bullet points, numbered lists, and feature lists
|
|
4
|
+
*
|
|
5
|
+
* @version 0.0.1
|
|
6
|
+
* @since 0.0.1
|
|
7
|
+
* @author AMBROISE PARK Consulting
|
|
8
|
+
*/
|
|
9
|
+
import { type ViewStyle } from 'react-native';
|
|
10
|
+
import type { ReactNode } from 'react';
|
|
11
|
+
/**
|
|
12
|
+
* List item interface
|
|
13
|
+
*/
|
|
14
|
+
export interface ListItem {
|
|
15
|
+
/** Item content (text or ReactNode) */
|
|
16
|
+
content: ReactNode;
|
|
17
|
+
/** Optional icon before item */
|
|
18
|
+
icon?: ReactNode;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* List component props interface
|
|
22
|
+
*/
|
|
23
|
+
export interface ListProps {
|
|
24
|
+
/**
|
|
25
|
+
* Array of items (strings or objects)
|
|
26
|
+
*/
|
|
27
|
+
items?: (string | ReactNode | ListItem)[];
|
|
28
|
+
/**
|
|
29
|
+
* Whether to render as ordered list (numbers)
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
32
|
+
ordered?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Default icon for all string items
|
|
35
|
+
*/
|
|
36
|
+
icon?: ReactNode;
|
|
37
|
+
/**
|
|
38
|
+
* Item density affecting gap and padding
|
|
39
|
+
* @default 'default'
|
|
40
|
+
*/
|
|
41
|
+
density?: 'compact' | 'default' | 'comfortable';
|
|
42
|
+
/**
|
|
43
|
+
* Alternative content (replaces items array rendering)
|
|
44
|
+
*/
|
|
45
|
+
children?: ReactNode;
|
|
46
|
+
/**
|
|
47
|
+
* Spacing between items (in pixels)
|
|
48
|
+
* @default 4
|
|
49
|
+
*/
|
|
50
|
+
gap?: number;
|
|
51
|
+
/**
|
|
52
|
+
* Additional style
|
|
53
|
+
*/
|
|
54
|
+
style?: ViewStyle;
|
|
55
|
+
/**
|
|
56
|
+
* Test ID for testing
|
|
57
|
+
*/
|
|
58
|
+
testID?: string;
|
|
59
|
+
}
|
|
60
|
+
declare const List: ({ items, ordered, icon, density, children, gap, style, testID, }: ListProps) => import("react/jsx-runtime").JSX.Element;
|
|
61
|
+
export default List;
|
|
62
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/List/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAOpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,uCAAuC;IACvC,OAAO,EAAE,SAAS,CAAC;IACnB,gCAAgC;IAChC,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC,EAAE,CAAC;IAC1C;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC;IAChD;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAsCD,QAAA,MAAM,IAAI,GAAI,kEASX,SAAS,4CAqEX,CAAC;AAEF,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview NavigationMenu component
|
|
3
|
+
* @description Navigation menu component
|
|
4
|
+
*
|
|
5
|
+
* @version 0.0.1
|
|
6
|
+
* @since 0.0.1
|
|
7
|
+
* @author AMBROISE PARK Consulting
|
|
8
|
+
*/
|
|
9
|
+
import { type ViewStyle } from 'react-native';
|
|
10
|
+
import type { ReactNode } from 'react';
|
|
11
|
+
/**
|
|
12
|
+
* Navigation menu item interface
|
|
13
|
+
*/
|
|
14
|
+
export interface NavigationMenuItem {
|
|
15
|
+
label: string;
|
|
16
|
+
value: string;
|
|
17
|
+
href?: string;
|
|
18
|
+
icon?: ReactNode;
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
onPress?: () => void;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* NavigationMenu component props interface
|
|
24
|
+
*/
|
|
25
|
+
export interface NavigationMenuProps {
|
|
26
|
+
/**
|
|
27
|
+
* Menu items
|
|
28
|
+
*/
|
|
29
|
+
items?: NavigationMenuItem[];
|
|
30
|
+
/**
|
|
31
|
+
* Current active value
|
|
32
|
+
*/
|
|
33
|
+
value?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Change handler
|
|
36
|
+
*/
|
|
37
|
+
onValueChange?: (value: string) => void;
|
|
38
|
+
/**
|
|
39
|
+
* Whether menu is vertical
|
|
40
|
+
* @default false
|
|
41
|
+
*/
|
|
42
|
+
vertical?: boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Menu orientation
|
|
45
|
+
* @default 'horizontal'
|
|
46
|
+
*/
|
|
47
|
+
orientation?: 'horizontal' | 'vertical';
|
|
48
|
+
/**
|
|
49
|
+
* Custom link component for navigation
|
|
50
|
+
*/
|
|
51
|
+
LinkComponent?: any;
|
|
52
|
+
/**
|
|
53
|
+
* Custom children (overrides items rendering)
|
|
54
|
+
*/
|
|
55
|
+
children?: ReactNode;
|
|
56
|
+
/**
|
|
57
|
+
* Additional style
|
|
58
|
+
*/
|
|
59
|
+
style?: ViewStyle;
|
|
60
|
+
/**
|
|
61
|
+
* Test ID for testing
|
|
62
|
+
*/
|
|
63
|
+
testID?: string;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Navigation menu component.
|
|
67
|
+
*
|
|
68
|
+
* @component
|
|
69
|
+
* @example
|
|
70
|
+
* ```tsx
|
|
71
|
+
* <NavigationMenu
|
|
72
|
+
* items={[
|
|
73
|
+
* { label: 'Home', value: 'home', onPress: () => navigate('/') },
|
|
74
|
+
* { label: 'About', value: 'about', onPress: () => navigate('/about') }
|
|
75
|
+
* ]}
|
|
76
|
+
* />
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
declare const NavigationMenu: ({ items, value, onValueChange, vertical, orientation, LinkComponent, children, style, testID, }: NavigationMenuProps) => import("react/jsx-runtime").JSX.Element;
|
|
80
|
+
export default NavigationMenu;
|
|
81
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/NavigationMenu/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAOtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC7B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC;;OAEG;IACH,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAYD;;;;;;;;;;;;;GAaG;AACH,QAAA,MAAM,cAAc,GAAI,iGAUrB,mBAAmB,4CA6DrB,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Pagination component
|
|
3
|
+
* @description Pagination component for navigating through pages
|
|
4
|
+
*
|
|
5
|
+
* @version 0.0.1
|
|
6
|
+
* @since 0.0.1
|
|
7
|
+
* @author AMBROISE PARK Consulting
|
|
8
|
+
*/
|
|
9
|
+
import { type ViewStyle } from 'react-native';
|
|
10
|
+
/**
|
|
11
|
+
* Pagination component props interface
|
|
12
|
+
*/
|
|
13
|
+
export interface PaginationProps {
|
|
14
|
+
/**
|
|
15
|
+
* Current page (1-indexed)
|
|
16
|
+
*/
|
|
17
|
+
currentPage: number;
|
|
18
|
+
/**
|
|
19
|
+
* Total number of pages
|
|
20
|
+
*/
|
|
21
|
+
totalPages: number;
|
|
22
|
+
/**
|
|
23
|
+
* Page change handler
|
|
24
|
+
*/
|
|
25
|
+
onPageChange: (page: number) => void;
|
|
26
|
+
/**
|
|
27
|
+
* Maximum number of visible page buttons
|
|
28
|
+
* @default 5
|
|
29
|
+
*/
|
|
30
|
+
maxVisible?: number;
|
|
31
|
+
/**
|
|
32
|
+
* Show navigation buttons (Previous/Next)
|
|
33
|
+
* @default true
|
|
34
|
+
*/
|
|
35
|
+
showNavigation?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Previous button label
|
|
38
|
+
* @default 'Previous'
|
|
39
|
+
*/
|
|
40
|
+
previousLabel?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Next button label
|
|
43
|
+
* @default 'Next'
|
|
44
|
+
*/
|
|
45
|
+
nextLabel?: string;
|
|
46
|
+
/**
|
|
47
|
+
* Items per page
|
|
48
|
+
*/
|
|
49
|
+
pageSize?: number;
|
|
50
|
+
/**
|
|
51
|
+
* Total number of items
|
|
52
|
+
*/
|
|
53
|
+
total?: number;
|
|
54
|
+
/**
|
|
55
|
+
* Placeholder text for items per page selector
|
|
56
|
+
*/
|
|
57
|
+
itemsPerPagePlaceholder?: string;
|
|
58
|
+
/**
|
|
59
|
+
* Label template for showing range (e.g. "Showing {from}-{to} of {total}")
|
|
60
|
+
*/
|
|
61
|
+
showingLabel?: string;
|
|
62
|
+
/**
|
|
63
|
+
* Additional style
|
|
64
|
+
*/
|
|
65
|
+
style?: ViewStyle;
|
|
66
|
+
/**
|
|
67
|
+
* Test ID for testing
|
|
68
|
+
*/
|
|
69
|
+
testID?: string;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Pagination component for navigating through pages.
|
|
73
|
+
*
|
|
74
|
+
* @component
|
|
75
|
+
* @example
|
|
76
|
+
* ```tsx
|
|
77
|
+
* <Pagination
|
|
78
|
+
* currentPage={1}
|
|
79
|
+
* totalPages={10}
|
|
80
|
+
* onPageChange={setPage}
|
|
81
|
+
* />
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
declare const Pagination: ({ currentPage, totalPages, onPageChange, maxVisible, showNavigation, previousLabel, nextLabel, pageSize, total, itemsPerPagePlaceholder, showingLabel, style, testID, }: PaginationProps) => import("react/jsx-runtime").JSX.Element;
|
|
85
|
+
export default Pagination;
|
|
86
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/Pagination/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAGH,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAOhE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,UAAU,GAAI,yKAcjB,eAAe,4CA4GjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
|