@telus-uds/components-base 4.0.0-alpha.2 → 4.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/CHANGELOG.md +16 -1
  2. package/lib/cjs/Autocomplete/Autocomplete.js +13 -1
  3. package/lib/cjs/Autocomplete/constants.js +1 -1
  4. package/lib/cjs/Listbox/ListboxOverlay.js +7 -1
  5. package/lib/cjs/MultiSelectFilter/ModalOverlay.js +7 -1
  6. package/lib/cjs/MultiSelectFilter/MultiSelectFilter.js +2 -28
  7. package/lib/cjs/TextInput/TextInputBase.js +2 -1
  8. package/lib/cjs/utils/useOverlaidPosition.js +83 -42
  9. package/lib/esm/Autocomplete/Autocomplete.js +13 -1
  10. package/lib/esm/Autocomplete/constants.js +1 -1
  11. package/lib/esm/Listbox/ListboxOverlay.js +7 -1
  12. package/lib/esm/MultiSelectFilter/ModalOverlay.js +8 -2
  13. package/lib/esm/MultiSelectFilter/MultiSelectFilter.js +2 -28
  14. package/lib/esm/TextInput/TextInputBase.js +2 -1
  15. package/lib/esm/utils/useOverlaidPosition.js +83 -42
  16. package/lib/package.json +1 -1
  17. package/package.json +1 -1
  18. package/src/Autocomplete/Autocomplete.jsx +11 -2
  19. package/src/Autocomplete/constants.js +1 -1
  20. package/src/Listbox/ListboxOverlay.jsx +6 -2
  21. package/src/MultiSelectFilter/ModalOverlay.jsx +9 -3
  22. package/src/MultiSelectFilter/MultiSelectFilter.jsx +1 -31
  23. package/src/TextInput/TextInputBase.jsx +2 -1
  24. package/src/utils/useOverlaidPosition.js +84 -34
  25. package/types/A11yInfoProvider.d.ts +9 -0
  26. package/types/A11yText.d.ts +13 -0
  27. package/types/ActionCard.d.ts +19 -0
  28. package/types/ActivityIndicator.d.ts +13 -0
  29. package/types/Autocomplete.d.ts +27 -0
  30. package/types/Badge.d.ts +15 -4
  31. package/types/BaseProvider.d.ts +26 -0
  32. package/types/Box.d.ts +13 -3
  33. package/types/Button.d.ts +35 -0
  34. package/types/Card.d.ts +19 -0
  35. package/types/CardGroup.d.ts +23 -0
  36. package/types/Carousel.d.ts +25 -0
  37. package/types/Checkbox.d.ts +15 -2
  38. package/types/CheckboxCard.d.ts +20 -0
  39. package/types/CheckboxCardGroup.d.ts +10 -4
  40. package/types/ChevronLink.d.ts +9 -2
  41. package/types/ColourToggle.d.ts +16 -0
  42. package/types/Common.d.ts +7 -3
  43. package/types/Divider.d.ts +13 -1
  44. package/types/DownloadApp.d.ts +19 -0
  45. package/types/ExpandCollapse.d.ts +16 -9
  46. package/types/ExpandCollapseMini.d.ts +16 -0
  47. package/types/Feedback.d.ts +16 -0
  48. package/types/Fieldset.d.ts +17 -0
  49. package/types/FileUpload.d.ts +6 -0
  50. package/types/FlexGrid.d.ts +57 -0
  51. package/types/Footnote.d.ts +18 -0
  52. package/types/HorizontalScroll.d.ts +15 -0
  53. package/types/HorizontalScrollButton.d.ts +17 -1
  54. package/types/Icon.d.ts +13 -2
  55. package/types/IconButton.d.ts +19 -0
  56. package/types/InputLabel.d.ts +12 -0
  57. package/types/InputSupports.d.ts +19 -0
  58. package/types/Link.d.ts +20 -4
  59. package/types/List.d.ts +11 -4
  60. package/types/Listbox.d.ts +13 -3
  61. package/types/Modal.d.ts +25 -0
  62. package/types/MultiSelectFilter.d.ts +24 -0
  63. package/types/Notification.d.ts +19 -0
  64. package/types/OrderedList.d.ts +17 -0
  65. package/types/Pagination.d.ts +25 -0
  66. package/types/Portal.d.ts +5 -1
  67. package/types/PriceLockup.d.ts +28 -0
  68. package/types/ProductCard.d.ts +20 -0
  69. package/types/ProductCardGroup.d.ts +21 -0
  70. package/types/Progress.d.ts +22 -0
  71. package/types/QuickLinks.d.ts +27 -0
  72. package/types/QuickLinksFeature.d.ts +27 -0
  73. package/types/Radio.d.ts +22 -0
  74. package/types/RadioCard.d.ts +21 -0
  75. package/types/Responsive.d.ts +14 -0
  76. package/types/Scroll.d.ts +2 -2
  77. package/types/Search.d.ts +15 -2
  78. package/types/Select.d.ts +12 -4
  79. package/types/SideNav.d.ts +38 -0
  80. package/types/Skeleton.d.ts +17 -0
  81. package/types/SkipLink.d.ts +14 -0
  82. package/types/Spacer.d.ts +8 -1
  83. package/types/StackView.d.ts +8 -2
  84. package/types/Status.d.ts +2 -3
  85. package/types/StepTracker.d.ts +16 -0
  86. package/types/TabBar.d.ts +25 -0
  87. package/types/Tabs.d.ts +12 -3
  88. package/types/Tags.d.ts +24 -0
  89. package/types/TextButton.d.ts +11 -4
  90. package/types/TextInput.d.ts +38 -0
  91. package/types/ThemeProvider.d.ts +29 -0
  92. package/types/Timeline.d.ts +16 -0
  93. package/types/ToggleSwitch.d.ts +11 -2
  94. package/types/ToolTip.d.ts +7 -3
  95. package/types/TooltipButton.d.ts +20 -0
  96. package/types/Typography.d.ts +8 -2
  97. package/types/Validator.d.ts +16 -0
  98. package/types/ViewportProvider.d.ts +12 -0
  99. package/types/index.d.ts +197 -50
@@ -1,4 +1,6 @@
1
- export interface HorizontalScrollButtonTokens {
1
+ import type { ComponentType } from 'react'
2
+
3
+ export type HorizontalScrollButtonTokens = {
2
4
  backgroundColor?: string
3
5
  borderColor?: string
4
6
  borderRadius?: number | string
@@ -14,3 +16,17 @@ export interface HorizontalScrollButtonTokens {
14
16
  padding?: number | string
15
17
  shadow?: string
16
18
  }
19
+
20
+ export interface HorizontalScrollButtonProps {
21
+ direction: 'previous' | 'next'
22
+ onPress: () => void
23
+ icon?: ComponentType<any>
24
+ offset?: number
25
+ copy?: 'en' | 'fr'
26
+ variant?: Record<string, string | number | boolean | undefined>
27
+ tokens?: HorizontalScrollButtonTokens
28
+ }
29
+
30
+ declare const HorizontalScrollButton: ComponentType<HorizontalScrollButtonProps>
31
+
32
+ export { HorizontalScrollButton }
package/types/Icon.d.ts CHANGED
@@ -1,8 +1,15 @@
1
+ import type { ComponentType } from 'react'
2
+ import { StyleProp, ViewStyle } from 'react-native'
3
+
1
4
  export interface IconProps {
2
5
  scalesWithText?: boolean
3
6
  variant?: IconVariant
4
7
  tokens?: IconTokens
5
- icon: React.ReactNode
8
+ icon: ComponentType<any>
9
+ accessibilityLabel?: string
10
+ style?: StyleProp<ViewStyle>
11
+ testID?: string
12
+ dataSet?: Record<string, any>
6
13
  }
7
14
 
8
15
  export interface IconTokens {
@@ -18,4 +25,8 @@ export type IconVariant = {
18
25
  size?: 'micro' | 'small' | 'large' | 'extraLarge'
19
26
  }
20
27
 
21
- export type IconPositionLeftRight = 'left' | 'right'
28
+ export type IconPositionLeftRight = 'left' | 'right' | 'inline'
29
+
30
+ declare const Icon: ComponentType<IconProps>
31
+
32
+ export { Icon }
@@ -0,0 +1,19 @@
1
+ import type { ComponentType, ElementType } from 'react'
2
+
3
+ export interface IconButtonProps {
4
+ icon?: ElementType
5
+ href?: string
6
+ hrefAttrs?: Record<string, string>
7
+ onPress?: () => void
8
+ inactive?: boolean
9
+ tokens?: Record<string, string | number | boolean | object>
10
+ variant?: Record<string, string | number | boolean | undefined>
11
+ testID?: string
12
+ dataSet?: Record<string, any>
13
+ accessibilityLabel?: string
14
+ accessibilityRole?: string
15
+ }
16
+
17
+ declare const IconButton: ComponentType<IconButtonProps>
18
+
19
+ export { IconButton }
@@ -0,0 +1,12 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface InputLabelProps {
4
+ children?: ReactNode
5
+ forId?: string
6
+ testID?: string
7
+ dataSet?: Record<string, any>
8
+ }
9
+
10
+ declare const InputLabel: ComponentType<InputLabelProps>
11
+
12
+ export { InputLabel }
@@ -0,0 +1,19 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface InputSupportsProps {
4
+ children?: ReactNode | ((props: Record<string, any>) => ReactNode)
5
+ copy?: 'en' | 'fr'
6
+ label?: string
7
+ hint?: string
8
+ hintPosition?: 'inline' | 'below'
9
+ validation?: 'error' | 'success'
10
+ feedback?: string
11
+ tooltip?: string | Record<string, any>
12
+ tokens?: Record<string, string | number | boolean | object>
13
+ testID?: string
14
+ dataSet?: Record<string, any>
15
+ }
16
+
17
+ declare const InputSupports: ComponentType<InputSupportsProps>
18
+
19
+ export { InputSupports }
package/types/Link.d.ts CHANGED
@@ -1,17 +1,29 @@
1
+ import type { ComponentType, ReactNode } from 'react'
1
2
  import { IconPositionLeftRight, IconProps } from './Icon'
2
3
 
3
4
  export interface LinkProps {
4
- href: string
5
- onPress: () => void
5
+ href?: string
6
+ onPress?: () => void
6
7
  tokens?: LinkTokens
7
8
  accessibilityRole?: string
8
9
  accessibilityLabel?: string
9
10
  variant?: LinkAndTextButtonVariants
10
11
  iconProps?: IconProps
11
- icon?: React.ReactNode
12
+ icon?: ComponentType<any>
12
13
  iconPosition?: IconPositionLeftRight
13
14
  testID?: string
14
- children?: React.ReactNode
15
+ children?: ReactNode
16
+ hrefAttrs?: HrefAttrs
17
+ pointerEvents?: 'all' | 'none' | 'box-only' | 'box-none'
18
+ onLayout?: (event: any) => void
19
+ nativeID?: string
20
+ dataSet?: Record<string, any>
21
+ }
22
+
23
+ export interface HrefAttrs {
24
+ download?: string
25
+ rel?: string
26
+ target?: string
15
27
  }
16
28
 
17
29
  export enum LinkSize {
@@ -45,3 +57,7 @@ export type LinkTokens = {
45
57
  iconTranslateY?: number
46
58
  alignSelf?: string
47
59
  }
60
+
61
+ declare const Link: ComponentType<LinkProps>
62
+
63
+ export { Link }
package/types/List.d.ts CHANGED
@@ -1,12 +1,12 @@
1
- import { TextAlign } from '@telus-uds/components-web/types/common'
2
- import { ReactElement, ReactNode } from 'react'
1
+ import type { ComponentType, ReactElement, ReactNode } from 'react'
2
+ import { TextAlign } from './Common'
3
3
 
4
- type ListVariants = {
4
+ export type ListVariants = {
5
5
  size?: 'small' | 'medium' | 'large'
6
6
  compact?: boolean
7
7
  }
8
8
 
9
- type ListTokens = {
9
+ export type ListTokens = {
10
10
  interItemMargin?: number
11
11
  interItemMarginWithDivider?: number
12
12
  dividerColor?: string
@@ -35,6 +35,7 @@ export interface ListItemProps {
35
35
  icon?: ReactNode | string
36
36
  iconColor?: string
37
37
  iconSize?: number
38
+ iconVerticalAlign?: 'top' | 'center' | 'bottom'
38
39
  title?: string
39
40
  testID?: string
40
41
  }
@@ -46,3 +47,9 @@ export interface ListItemTokens {
46
47
  itemLineHeight?: number
47
48
  itemFontName?: string
48
49
  }
50
+
51
+ declare const List: ComponentType<ListProps> & {
52
+ Item: ComponentType<ListItemProps>
53
+ }
54
+
55
+ export { List }
@@ -1,4 +1,6 @@
1
- type ListboxTokens = {
1
+ import type { ComponentType, ElementType } from 'react'
2
+
3
+ export type ListboxTokens = {
2
4
  groupBorderRadius?: number | string
3
5
  groupBorderWidth?: number | string
4
6
  groupFontSize?: number
@@ -65,7 +67,7 @@ type ListboxTokens = {
65
67
  secondLevelParentIcon?: string
66
68
  }
67
69
 
68
- type ListboxItems = {
70
+ export type ListboxItems = {
69
71
  label: string
70
72
  href: string
71
73
  tokens?: ListboxTokens
@@ -75,10 +77,18 @@ export interface ListboxProps {
75
77
  items: ListboxItems[]
76
78
  firstItemRef?: object
77
79
  parentRef?: object
78
- LinkRouter?: React.ElementType
80
+ LinkRouter?: ElementType
79
81
  linkRouterProps?: object
80
82
  tokens?: ListboxTokens
81
83
  variant?: { secondLevel?: boolean }
82
84
  selectedId?: string
83
85
  onClose?: () => void
86
+ copy?: 'en' | 'fr'
87
+ dictionary?: Record<string, any>
88
+ testID?: string
89
+ itemRouterProps?: object
84
90
  }
91
+
92
+ declare const Listbox: ComponentType<ListboxProps>
93
+
94
+ export { Listbox }
@@ -0,0 +1,25 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface ModalProps {
4
+ children?: ReactNode
5
+ copy?: 'en' | 'fr'
6
+ isOpen?: boolean
7
+ onClose?: () => void
8
+ maxWidth?: boolean
9
+ tokens?: Record<string, string | number | boolean | object>
10
+ variant?: Record<string, string | number | boolean | undefined>
11
+ closeButton?: ReactNode | null
12
+ heading?: string
13
+ headingLevel?: 'h3' | 'h4'
14
+ subHeading?: string
15
+ subHeadingSize?: 'small' | 'medium' | 'large'
16
+ bodyText?: string
17
+ confirmButtonText?: string
18
+ testID?: string
19
+ dataSet?: Record<string, any>
20
+ accessibilityLabel?: string
21
+ }
22
+
23
+ declare const Modal: ComponentType<ModalProps>
24
+
25
+ export { Modal }
@@ -0,0 +1,24 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface MultiSelectFilterItem {
4
+ id?: string
5
+ label: string
6
+ [key: string]: any
7
+ }
8
+
9
+ export interface MultiSelectFilterProps {
10
+ label: string
11
+ subtitle?: string | ReactNode
12
+ id?: string
13
+ variant?: Record<string, string | number | boolean | undefined>
14
+ tokens?: Record<string, string | number | boolean | object>
15
+ items?: MultiSelectFilterItem[]
16
+ onChange?: (selectedIds: string[]) => void
17
+ selectedIds?: string[]
18
+ testID?: string
19
+ dataSet?: Record<string, any>
20
+ }
21
+
22
+ declare const MultiSelectFilter: ComponentType<MultiSelectFilterProps>
23
+
24
+ export { MultiSelectFilter }
@@ -0,0 +1,19 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface NotificationProps {
4
+ children?: string | ReactNode | ((props: Record<string, any>) => ReactNode)
5
+ dismissible?: boolean
6
+ copy?: 'en' | 'fr' | { dismiss: string }
7
+ onDismiss?: () => void
8
+ contentMinWidth?: Record<string, 'max' | 'full'>
9
+ tokens?: Record<string, string | number | boolean | object>
10
+ variant?: Record<string, string | number | boolean | undefined>
11
+ testID?: string
12
+ dataSet?: Record<string, any>
13
+ accessibilityLabel?: string
14
+ accessibilityRole?: string
15
+ }
16
+
17
+ declare const Notification: ComponentType<NotificationProps>
18
+
19
+ export { Notification }
@@ -0,0 +1,17 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface OrderedListItemProps {
4
+ children?: ReactNode
5
+ }
6
+
7
+ export interface OrderedListProps {
8
+ children: ReactNode
9
+ testID?: string
10
+ dataSet?: Record<string, any>
11
+ }
12
+
13
+ declare const OrderedList: ComponentType<OrderedListProps> & {
14
+ Item: ComponentType<OrderedListItemProps>
15
+ }
16
+
17
+ export { OrderedList }
@@ -0,0 +1,25 @@
1
+ import type { ComponentType, ElementType, ReactNode } from 'react'
2
+
3
+ export interface PaginationPageButtonProps {
4
+ children?: ReactNode
5
+ }
6
+
7
+ export interface PaginationProps {
8
+ children?: ReactNode
9
+ copy?: 'en' | 'fr'
10
+ variant?: Record<string, string | number | boolean | undefined>
11
+ tokens?: Record<string, string | number | boolean | object>
12
+ sideButtonVariant?: Record<string, string | number | boolean | undefined>
13
+ sideButtonTokens?: Record<string, string | number | boolean | object>
14
+ numberOfPagesBeforeEllipsis?: number
15
+ LinkRouter?: ElementType
16
+ linkRouterProps?: Record<string, any>
17
+ testID?: string
18
+ dataSet?: Record<string, any>
19
+ }
20
+
21
+ declare const Pagination: ComponentType<PaginationProps> & {
22
+ PageButton: ComponentType<PaginationPageButtonProps>
23
+ }
24
+
25
+ export { Pagination }
package/types/Portal.d.ts CHANGED
@@ -1,5 +1,9 @@
1
- import { ReactNode } from 'react'
1
+ import type { ComponentType, ReactNode } from 'react'
2
2
 
3
3
  export interface PortalProps {
4
4
  children: ReactNode
5
5
  }
6
+
7
+ declare const Portal: ComponentType<PortalProps>
8
+
9
+ export { Portal }
@@ -0,0 +1,28 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface PriceLockupProps {
4
+ size?: 'small' | 'medium'
5
+ currencySymbol?: string
6
+ topText?: string
7
+ price: string
8
+ rateText?: string
9
+ bottomText?: string
10
+ signDirection?: 'left' | 'right'
11
+ footnoteLinks?: Array<number | string>
12
+ strikeThrough?: boolean
13
+ a11yText?: string
14
+ onClickFootnote?: (index: number) => void
15
+ copy?: 'en' | 'fr'
16
+ dictionary?: Record<string, any>
17
+ ratePosition?: 'right' | 'bottom'
18
+ linkPosition?: string
19
+ tokens?: Record<string, string | number | boolean | object>
20
+ variant?: Record<string, string | number | boolean | undefined>
21
+ children?: ReactNode
22
+ testID?: string
23
+ dataSet?: Record<string, any>
24
+ }
25
+
26
+ declare const PriceLockup: ComponentType<PriceLockupProps>
27
+
28
+ export { PriceLockup }
@@ -0,0 +1,20 @@
1
+ import type { ComponentType } from 'react'
2
+
3
+ export interface ProductCardImage {
4
+ src?: string | ReactNode
5
+ alt?: string
6
+ }
7
+
8
+ export interface ProductCardProps {
9
+ image?: ProductCardImage
10
+ copy?: 'en' | 'fr'
11
+ dictionary?: Record<string, any>
12
+ tokens?: Record<string, string | number | boolean | object>
13
+ variant?: Record<string, string | number | boolean | undefined>
14
+ testID?: string
15
+ dataSet?: Record<string, any>
16
+ }
17
+
18
+ declare const ProductCard: ComponentType<ProductCardProps>
19
+
20
+ export { ProductCard }
@@ -0,0 +1,21 @@
1
+ import type { ComponentType } from 'react'
2
+
3
+ export interface ProductCardGroupCardItem {
4
+ id: string
5
+ image?: Record<string, any>
6
+ dictionary?: Record<string, any>
7
+ [key: string]: any
8
+ }
9
+
10
+ export interface ProductCardGroupProps {
11
+ maxSelection?: number
12
+ productCards: ProductCardGroupCardItem[]
13
+ tokens?: Record<string, string | number | boolean | object>
14
+ variant?: Record<string, string | number | boolean | undefined>
15
+ testID?: string
16
+ dataSet?: Record<string, any>
17
+ }
18
+
19
+ declare const ProductCardGroup: ComponentType<ProductCardGroupProps>
20
+
21
+ export { ProductCardGroup }
@@ -0,0 +1,22 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface ProgressBarProps {
4
+ value?: number
5
+ tokens?: Record<string, string | number | boolean | object>
6
+ variant?: Record<string, string | number | boolean | undefined>
7
+ testID?: string
8
+ }
9
+
10
+ export interface ProgressProps {
11
+ children: ReactNode
12
+ tokens?: Record<string, string | number | boolean | object>
13
+ variant?: Record<string, string | number | boolean | undefined>
14
+ testID?: string
15
+ dataSet?: Record<string, any>
16
+ }
17
+
18
+ declare const Progress: ComponentType<ProgressProps> & {
19
+ Bar: ComponentType<ProgressBarProps>
20
+ }
21
+
22
+ export { Progress }
@@ -0,0 +1,27 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface QuickLinksItemProps {
4
+ children?: ReactNode
5
+ href?: string
6
+ onPress?: () => void
7
+ icon?: ComponentType<any>
8
+ tokens?: Record<string, string | number | boolean | object>
9
+ testID?: string
10
+ }
11
+
12
+ export interface QuickLinksProps {
13
+ children?: ReactNode
14
+ tokens?: Record<string, string | number | boolean | object>
15
+ cardTokens?: Record<string, string | number | boolean | object>
16
+ listTokens?: Record<string, string | number | boolean | object>
17
+ tag?: string
18
+ variant?: Record<string, string | number | boolean | undefined>
19
+ testID?: string
20
+ dataSet?: Record<string, any>
21
+ }
22
+
23
+ declare const QuickLinks: ComponentType<QuickLinksProps> & {
24
+ Item: ComponentType<QuickLinksItemProps>
25
+ }
26
+
27
+ export { QuickLinks }
@@ -0,0 +1,27 @@
1
+ import type { ComponentType, ReactNode, ElementType } from 'react'
2
+
3
+ export interface QuickLinksFeatureItemProps {
4
+ children: ReactNode
5
+ imageAccessibilityLabel: string
6
+ imageSource: string | ReactNode
7
+ tokens?: Record<string, string | number | boolean | object>
8
+ variant?: Record<string, string | number | boolean | undefined>
9
+ href?: string
10
+ onPress?: () => void
11
+ LinkRouter?: ElementType
12
+ linkRouterProps?: Record<string, any>
13
+ }
14
+
15
+ export interface QuickLinksFeatureProps {
16
+ children?: ReactNode
17
+ tokens?: Record<string, string | number | boolean | object>
18
+ variant?: Record<string, string | number | boolean | undefined>
19
+ testID?: string
20
+ dataSet?: Record<string, any>
21
+ }
22
+
23
+ declare const QuickLinksFeature: ComponentType<QuickLinksFeatureProps> & {
24
+ Item: ComponentType<QuickLinksFeatureItemProps>
25
+ }
26
+
27
+ export { QuickLinksFeature }
@@ -0,0 +1,22 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface RadioProps {
4
+ checked?: boolean
5
+ defaultChecked?: boolean
6
+ description?: string
7
+ id?: string
8
+ inactive?: boolean
9
+ label?: string | ReactNode
10
+ name?: string
11
+ onChange?: (value: any) => void
12
+ value?: any
13
+ tokens?: Record<string, string | number | boolean | object>
14
+ variant?: Record<string, string | number | boolean | undefined>
15
+ testID?: string
16
+ dataSet?: Record<string, any>
17
+ accessibilityLabel?: string
18
+ }
19
+
20
+ declare const Radio: ComponentType<RadioProps>
21
+
22
+ export { Radio }
@@ -0,0 +1,21 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export interface RadioCardProps {
4
+ title?: string
5
+ children?: ReactNode | ((state: Record<string, any>) => ReactNode)
6
+ checked?: boolean
7
+ defaultChecked?: boolean
8
+ description?: string
9
+ id?: string
10
+ inactive?: boolean
11
+ onChange?: (value: any) => void
12
+ tokens?: Record<string, string | number | boolean | object>
13
+ variant?: Record<string, string | number | boolean | undefined>
14
+ testID?: string
15
+ dataSet?: Record<string, any>
16
+ accessibilityLabel?: string
17
+ }
18
+
19
+ declare const RadioCard: ComponentType<RadioCardProps>
20
+
21
+ export { RadioCard }
@@ -0,0 +1,14 @@
1
+ import type { ComponentType, ReactNode } from 'react'
2
+
3
+ export type ViewportKey = 'xs' | 'sm' | 'md' | 'lg' | 'xl'
4
+
5
+ export interface ResponsiveProps {
6
+ min?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'
7
+ max?: 'sm' | 'md' | 'lg' | 'xl'
8
+ inheritedStyles?: string[]
9
+ children: ReactNode
10
+ }
11
+
12
+ declare const Responsive: ComponentType<ResponsiveProps>
13
+
14
+ export { Responsive }
package/types/Scroll.d.ts CHANGED
@@ -61,6 +61,6 @@ export interface ScrollItemProps {
61
61
  }
62
62
 
63
63
  declare const Scroll: ComponentType<ScrollProps>
64
- export declare const ScrollItem: ComponentType<ScrollItemProps>
64
+ declare const ScrollItem: ComponentType<ScrollItemProps>
65
65
 
66
- export default Scroll
66
+ export { Scroll, ScrollItem }
package/types/Search.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import type { ComponentType } from 'react'
1
2
  import { CopyType, Size } from './Common'
2
3
 
3
4
  export type SearchTokens = {
@@ -20,8 +21,8 @@ export type SearchTokens = {
20
21
  lineHeight?: number
21
22
  placeholderColor?: string
22
23
  buttonsGap?: Size
23
- clearButtonIcon?: React.ReactNode
24
- submitButtonIcon?: React.ReactNode
24
+ clearButtonIcon?: any
25
+ submitButtonIcon?: any
25
26
  }
26
27
 
27
28
  export interface SearchProps {
@@ -35,4 +36,16 @@ export interface SearchProps {
35
36
  onClear?: () => void
36
37
  onFocus?: () => void
37
38
  tokens?: SearchTokens
39
+ nativeSubmitBtnID?: string
40
+ searchIconPosition?: 'left' | 'right'
41
+ pointerEvents?: 'all' | 'none' | 'box-only' | 'box-none'
42
+ onLayout?: (event: any) => void
43
+ nativeID?: string
44
+ dataSet?: Record<string, any>
45
+ accessibilityLabel?: string
46
+ accessibilityRole?: string
38
47
  }
48
+
49
+ declare const Search: ComponentType<SearchProps>
50
+
51
+ export { Search }
package/types/Select.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import React from 'react'
1
+ import type { ComponentType, ReactNode } from 'react'
2
2
  import { IconProps } from './Icon'
3
3
 
4
4
  export type SelectTokens = {
@@ -28,7 +28,7 @@ export type SelectTokens = {
28
28
  }
29
29
 
30
30
  export interface SelectProps {
31
- children: string | React.ReactNode
31
+ children: string | ReactNode
32
32
  label: string
33
33
  initialValue?: string
34
34
  feedback?: string
@@ -44,14 +44,22 @@ export interface SelectProps {
44
44
  placeholder?: string
45
45
  tokens?: SelectTokens
46
46
  testID?: string
47
+ dataSet?: Record<string, any>
47
48
  }
48
49
 
49
50
  export interface SelectItemProps {
50
- children: string | React.ReactNode
51
+ children: string | ReactNode
51
52
  value: string
52
53
  }
53
54
 
54
55
  export interface SelectGroupProps {
55
- children: string | React.ReactNode
56
+ children: string | ReactNode
56
57
  label: string
57
58
  }
59
+
60
+ declare const Select: ComponentType<SelectProps> & {
61
+ Item: ComponentType<SelectItemProps>
62
+ Group: ComponentType<SelectGroupProps>
63
+ }
64
+
65
+ export { Select }