@telus-uds/components-base 1.12.0 → 1.14.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 (132) hide show
  1. package/CHANGELOG.md +41 -2
  2. package/component-docs.json +933 -55
  3. package/lib/BaseProvider/index.js +7 -2
  4. package/lib/Button/ButtonBase.js +52 -19
  5. package/lib/Button/ButtonGroup.js +7 -0
  6. package/lib/Button/propTypes.js +18 -0
  7. package/lib/Carousel/Carousel.js +83 -58
  8. package/lib/Carousel/CarouselContext.js +22 -8
  9. package/lib/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +73 -0
  10. package/lib/Carousel/CarouselStepTracker/CarouselStepTracker.js +56 -0
  11. package/lib/Carousel/CarouselStepTracker/index.js +13 -0
  12. package/lib/Carousel/CarouselTabs/CarouselTabs.js +70 -0
  13. package/lib/Carousel/CarouselTabs/CarouselTabsPanel.js +95 -0
  14. package/lib/Carousel/CarouselTabs/CarouselTabsPanelItem.js +148 -0
  15. package/lib/Carousel/CarouselTabs/index.js +13 -0
  16. package/lib/Carousel/CarouselThumbnail.js +99 -0
  17. package/lib/Carousel/CarouselThumbnailNavigation.js +87 -0
  18. package/lib/Carousel/dictionary.js +4 -2
  19. package/lib/Carousel/index.js +10 -1
  20. package/lib/Checkbox/Checkbox.js +7 -3
  21. package/lib/Checkbox/CheckboxGroup.js +8 -1
  22. package/lib/Feedback/Feedback.js +18 -10
  23. package/lib/Icon/IconText.js +6 -1
  24. package/lib/InputLabel/InputLabel.js +11 -5
  25. package/lib/Link/InlinePressable.js +1 -8
  26. package/lib/Link/LinkBase.js +13 -10
  27. package/lib/List/ListItem.js +8 -4
  28. package/lib/Notification/Notification.js +44 -24
  29. package/lib/Pagination/Pagination.js +7 -3
  30. package/lib/Radio/RadioGroup.js +8 -0
  31. package/lib/RadioCard/RadioCard.js +6 -1
  32. package/lib/RadioCard/RadioCardGroup.js +7 -0
  33. package/lib/Select/Select.js +7 -3
  34. package/lib/SkipLink/SkipLink.js +216 -0
  35. package/lib/SkipLink/index.js +13 -0
  36. package/lib/StepTracker/Step.js +8 -4
  37. package/lib/StepTracker/StepTracker.js +7 -3
  38. package/lib/Tabs/TabsItem.js +4 -0
  39. package/lib/TextInput/TextInputBase.js +7 -3
  40. package/lib/ThemeProvider/ThemeProvider.js +25 -3
  41. package/lib/ThemeProvider/utils/styles.js +8 -1
  42. package/lib/ThemeProvider/utils/theme-tokens.js +1 -1
  43. package/lib/ToggleSwitch/ToggleSwitchGroup.js +7 -0
  44. package/lib/Typography/Typography.js +6 -2
  45. package/lib/index.js +9 -0
  46. package/lib-module/BaseProvider/index.js +7 -2
  47. package/lib-module/Button/ButtonBase.js +41 -9
  48. package/lib-module/Button/ButtonGroup.js +7 -0
  49. package/lib-module/Button/propTypes.js +17 -0
  50. package/lib-module/Carousel/Carousel.js +80 -57
  51. package/lib-module/Carousel/CarouselContext.js +21 -8
  52. package/lib-module/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +51 -0
  53. package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +42 -0
  54. package/lib-module/Carousel/CarouselStepTracker/index.js +2 -0
  55. package/lib-module/Carousel/CarouselTabs/CarouselTabs.js +50 -0
  56. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanel.js +76 -0
  57. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanelItem.js +126 -0
  58. package/lib-module/Carousel/CarouselTabs/index.js +2 -0
  59. package/lib-module/Carousel/CarouselThumbnail.js +85 -0
  60. package/lib-module/Carousel/CarouselThumbnailNavigation.js +66 -0
  61. package/lib-module/Carousel/dictionary.js +4 -2
  62. package/lib-module/Carousel/index.js +2 -1
  63. package/lib-module/Checkbox/Checkbox.js +8 -4
  64. package/lib-module/Checkbox/CheckboxGroup.js +8 -1
  65. package/lib-module/Feedback/Feedback.js +19 -11
  66. package/lib-module/Icon/IconText.js +6 -1
  67. package/lib-module/InputLabel/InputLabel.js +12 -6
  68. package/lib-module/Link/InlinePressable.js +1 -8
  69. package/lib-module/Link/LinkBase.js +14 -11
  70. package/lib-module/List/ListItem.js +9 -5
  71. package/lib-module/Notification/Notification.js +46 -26
  72. package/lib-module/Pagination/Pagination.js +8 -4
  73. package/lib-module/Radio/RadioGroup.js +8 -0
  74. package/lib-module/RadioCard/RadioCard.js +7 -2
  75. package/lib-module/RadioCard/RadioCardGroup.js +7 -0
  76. package/lib-module/Select/Select.js +8 -4
  77. package/lib-module/SkipLink/SkipLink.js +188 -0
  78. package/lib-module/SkipLink/index.js +2 -0
  79. package/lib-module/StepTracker/Step.js +9 -5
  80. package/lib-module/StepTracker/StepTracker.js +8 -4
  81. package/lib-module/Tabs/TabsItem.js +5 -1
  82. package/lib-module/TextInput/TextInputBase.js +8 -4
  83. package/lib-module/ThemeProvider/ThemeProvider.js +24 -3
  84. package/lib-module/ThemeProvider/utils/styles.js +8 -1
  85. package/lib-module/ThemeProvider/utils/theme-tokens.js +1 -1
  86. package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +7 -0
  87. package/lib-module/Typography/Typography.js +7 -3
  88. package/lib-module/index.js +1 -0
  89. package/package.json +46 -47
  90. package/src/BaseProvider/index.jsx +6 -3
  91. package/src/Button/ButtonBase.jsx +36 -12
  92. package/src/Button/ButtonGroup.jsx +6 -0
  93. package/src/Button/propTypes.js +14 -0
  94. package/src/Carousel/Carousel.jsx +91 -64
  95. package/src/Carousel/CarouselContext.jsx +29 -5
  96. package/src/Carousel/CarouselFirstFocus/CarouselFirstFocus.jsx +49 -0
  97. package/src/Carousel/CarouselStepTracker/CarouselStepTracker.jsx +36 -0
  98. package/src/Carousel/CarouselStepTracker/index.js +3 -0
  99. package/src/Carousel/CarouselTabs/CarouselTabs.jsx +37 -0
  100. package/src/Carousel/CarouselTabs/CarouselTabsPanel.jsx +69 -0
  101. package/src/Carousel/CarouselTabs/CarouselTabsPanelItem.jsx +119 -0
  102. package/src/Carousel/CarouselTabs/index.js +3 -0
  103. package/src/Carousel/CarouselThumbnail.jsx +77 -0
  104. package/src/Carousel/CarouselThumbnailNavigation.jsx +53 -0
  105. package/src/Carousel/dictionary.js +4 -2
  106. package/src/Carousel/index.js +1 -0
  107. package/src/Checkbox/Checkbox.jsx +14 -11
  108. package/src/Checkbox/CheckboxGroup.jsx +8 -1
  109. package/src/Feedback/Feedback.jsx +14 -7
  110. package/src/Icon/IconText.jsx +3 -1
  111. package/src/InputLabel/InputLabel.jsx +13 -12
  112. package/src/Link/InlinePressable.jsx +2 -8
  113. package/src/Link/LinkBase.jsx +18 -21
  114. package/src/List/ListItem.jsx +10 -5
  115. package/src/Notification/Notification.jsx +40 -23
  116. package/src/Pagination/Pagination.jsx +6 -4
  117. package/src/Radio/RadioGroup.jsx +7 -0
  118. package/src/RadioCard/RadioCard.jsx +3 -2
  119. package/src/RadioCard/RadioCardGroup.jsx +6 -0
  120. package/src/Select/Select.jsx +12 -3
  121. package/src/SkipLink/SkipLink.jsx +179 -0
  122. package/src/SkipLink/index.js +3 -0
  123. package/src/StepTracker/Step.jsx +12 -4
  124. package/src/StepTracker/StepTracker.jsx +11 -10
  125. package/src/Tabs/TabsItem.jsx +3 -2
  126. package/src/TextInput/TextInputBase.jsx +11 -3
  127. package/src/ThemeProvider/ThemeProvider.jsx +22 -3
  128. package/src/ThemeProvider/utils/styles.js +9 -1
  129. package/src/ThemeProvider/utils/theme-tokens.js +1 -1
  130. package/src/ToggleSwitch/ToggleSwitchGroup.jsx +6 -0
  131. package/src/Typography/Typography.jsx +11 -12
  132. package/src/index.js +1 -0
@@ -29,6 +29,9 @@
29
29
  "paddingBottom": "size",
30
30
  "width": "size",
31
31
  "minWidth": "size",
32
+ "iconSize": "size",
33
+ "iconSpace": "integer",
34
+ "icon": "icon",
32
35
  "outerBorderColor": "color",
33
36
  "outerBorderWidth": "border",
34
37
  "outerBorderGap": "size",
@@ -87,7 +90,35 @@
87
90
  "showPreviousNextNavigation": "show",
88
91
  "showPanelNavigation": "show",
89
92
  "spaceBetweenSlideAndPreviousNextNavigation": "size",
90
- "spaceBetweenSlideAndPanelNavigation": "size"
93
+ "spaceBetweenSlideAndPanelNavigation": "size",
94
+ "thumbnailBorderColor": "color",
95
+ "thumbnailBorderRadius": "radius",
96
+ "thumbnailBorderWidth": "border",
97
+ "thumbnailContainerPaddingTop": "size",
98
+ "thumbnailMargin": "size",
99
+ "thumbnailPadding": "size",
100
+ "thumbnailSelectedBorderColor": "color",
101
+ "thumbnailSelectedBorderWidth": "border",
102
+ "thumbnailSize": "size"
103
+ },
104
+ "CarouselTabsPanelItem": {
105
+ "paddingLeft": "size",
106
+ "paddingRight": "size",
107
+ "paddingTop": "size",
108
+ "paddingBottom": "size",
109
+ "borderBottomColor": "color",
110
+ "borderBottomWidth": "border",
111
+ "borderBottomStyle": "borderStyle",
112
+ "flex": "integer",
113
+ "alignItems": "flexAlign",
114
+ "justifyContent": "flexJustifyContent",
115
+ "color": "color",
116
+ "fontSize": "fontSize",
117
+ "fontScaleCap": "fontSize",
118
+ "lineHeight": "lineHeight",
119
+ "letterSpacing": "letterSpacing",
120
+ "fontWeight": "fontWeight",
121
+ "fontName": "fontName"
91
122
  },
92
123
  "Checkbox": {
93
124
  "containerBackgroundColor": "color",
@@ -617,6 +648,17 @@
617
648
  "showStepName": "show",
618
649
  "showStepTrackerLabel": "show"
619
650
  },
651
+ "SkipLink": {
652
+ "backgroundColor": "color",
653
+ "color": "color",
654
+ "outlineColor": "color",
655
+ "outlineOffset": "border",
656
+ "outlineStyle": "borderStyle",
657
+ "outlineWidth": "border",
658
+ "paddingHorizontal": "size",
659
+ "paddingVertical": "size",
660
+ "borderRadius": "radius"
661
+ },
620
662
  "Tabs": {
621
663
  "nextIcon": "icon",
622
664
  "previousIcon": "icon",
@@ -900,6 +942,43 @@
900
942
  "type": "state"
901
943
  }
902
944
  },
945
+ "CarouselTabsPanelItem": {
946
+ "focus": {
947
+ "description": "Currently only web has good support for this. Applies when an interactive component's focus handler is triggered, such as keyboard tabbing or selection.",
948
+ "values": [
949
+ true
950
+ ],
951
+ "type": "state"
952
+ },
953
+ "hover": {
954
+ "description": "Currently web only. Applies when an interactive component's hover handler is triggered, such as on mouseover.",
955
+ "values": [
956
+ true
957
+ ],
958
+ "type": "state"
959
+ },
960
+ "pressed": {
961
+ "description": "Applies while an interactive component is being physically pressed. Most visible on touchscreen taps; in React Native Web, this is visible on web mouse clicks only if the pressable is held down.",
962
+ "values": [
963
+ true
964
+ ],
965
+ "type": "state"
966
+ },
967
+ "inactive": {
968
+ "description": "Prevents an interactive component from being interacted with and applies accessibility attributes to indicate to the user that this component cannot be used.",
969
+ "values": [
970
+ true
971
+ ],
972
+ "type": "state"
973
+ },
974
+ "selected": {
975
+ "description": "Applies while an interactive component is the currently selected one in a set of states or components, for example a button in a `ButtonGroup`.",
976
+ "values": [
977
+ true
978
+ ],
979
+ "type": "state"
980
+ }
981
+ },
903
982
  "Checkbox": {
904
983
  "checked": {
905
984
  "description": "Corresponds to a selected state for a checkbox or radio",
@@ -1554,6 +1633,15 @@
1554
1633
  ],
1555
1634
  "type": "state"
1556
1635
  }
1636
+ },
1637
+ "SkipLink": {
1638
+ "focus": {
1639
+ "description": "Currently only web has good support for this. Applies when an interactive component's focus handler is triggered, such as keyboard tabbing or selection.",
1640
+ "values": [
1641
+ true
1642
+ ],
1643
+ "type": "state"
1644
+ }
1557
1645
  }
1558
1646
  }
1559
1647
  },
@@ -1888,6 +1976,13 @@
1888
1976
  "docs": {
1889
1977
  "description": "",
1890
1978
  "props": {
1979
+ "children": {
1980
+ "type": {
1981
+ "name": "node"
1982
+ },
1983
+ "required": true,
1984
+ "description": ""
1985
+ },
1891
1986
  "defaultTheme": {
1892
1987
  "type": {
1893
1988
  "name": "custom",
@@ -1896,11 +1991,17 @@
1896
1991
  "required": false,
1897
1992
  "description": ""
1898
1993
  },
1899
- "children": {
1994
+ "themeOptions": {
1900
1995
  "type": {
1901
- "name": "node"
1996
+ "name": "shape",
1997
+ "value": {
1998
+ "forceAbsoluteFontSizing": {
1999
+ "name": "bool",
2000
+ "required": false
2001
+ }
2002
+ }
1902
2003
  },
1903
- "required": true,
2004
+ "required": false,
1904
2005
  "description": ""
1905
2006
  }
1906
2007
  },
@@ -4598,7 +4699,7 @@
4598
4699
  },
4599
4700
  "icon": {
4600
4701
  "type": {
4601
- "name": "func"
4702
+ "name": "elementType"
4602
4703
  },
4603
4704
  "required": false,
4604
4705
  "description": "Renders side item icon"
@@ -4769,7 +4870,7 @@
4769
4870
  },
4770
4871
  "icon": {
4771
4872
  "type": {
4772
- "name": "func"
4873
+ "name": "elementType"
4773
4874
  },
4774
4875
  "required": false,
4775
4876
  "description": "Renders side item icon"
@@ -4862,7 +4963,7 @@
4862
4963
  },
4863
4964
  "icon": {
4864
4965
  "type": {
4865
- "name": "func"
4966
+ "name": "elementType"
4866
4967
  },
4867
4968
  "required": false,
4868
4969
  "description": "Renders side item icon"
@@ -6756,6 +6857,69 @@
6756
6857
  }
6757
6858
  }
6758
6859
  },
6860
+ "SkipLink": {
6861
+ "docs": {
6862
+ "description": "A generic Skip link component, unstyled by default.\nA Skip link component help keyboard-only users, screen reader users to skip\nsections and navigate to the content they want.\n\n## Component API\n\nFor common uses, pass a `href` that is a # link to a DOM id that can be skipped to (web only).\n\nThe element with this ID should be focusable, e.g. `<Box nativeID=\"skip-target\" focusable>`.\n\nOther custom behaviour may be set by passing an `onPress` function, and routers may be integrated\nin the same way as other navigation-related components by passing a `LinkRouter`; but a # anchor\nhref on web and/or a `targetRef` for cross-platform applications is the recommended approach.\n\n## Visible styling\n\nWhen focused, the skip link shows as a visible element similar to a simplified ButtonLink using\nUDS theming. The `tokens` prop may be used to override these styles.\n\nTo control the background of a skip link, the following tokens can be used:\n\n- `backgroundColor`\n*\nIn order to control the color of the skip link text, the following tokens can be used:\n\n- `color`\n\n### Padding\n\nThe following padding tokens can be used:\n\n- `paddingHorizontal`\n- `paddingVertical`\n\n### Outline\n\nThe following tokens to control the outline:\n\n- `outlineColor`\n- `outlineOffset`\n- `outlineStyle`\n- `outlineWidth`\n\n## Usability and A11y guidelines\n\n- The skip link component is visually hidden until a keyboard press activates it.\n- Usually, you should place the skip link immediately after the opening <body> tag.\n- This lets users bypass top-level navigation links and jump to the main content on a page.\n- Also consider using SkipLink before a complex feature containing many focusable elements.\n\n## Accessibility\n\nSkip link supports all the common a11y and link props.",
6863
+ "props": {
6864
+ "children": {
6865
+ "type": {
6866
+ "name": "node"
6867
+ },
6868
+ "required": false,
6869
+ "description": "The text content shown or read out when the SkipLink is focused, usually a string."
6870
+ },
6871
+ "href": {
6872
+ "type": {
6873
+ "name": "string"
6874
+ },
6875
+ "required": false,
6876
+ "description": "The target to skip to. Usually an anchor link to a section id (e.g. href=\"#main-section\")."
6877
+ },
6878
+ "tokens": {
6879
+ "type": {
6880
+ "name": "custom",
6881
+ "raw": {
6882
+ "backgroundColor": "color",
6883
+ "color": "color",
6884
+ "outlineColor": "color",
6885
+ "outlineOffset": "border",
6886
+ "outlineStyle": "borderStyle",
6887
+ "outlineWidth": "border",
6888
+ "paddingHorizontal": "size",
6889
+ "paddingVertical": "size",
6890
+ "borderRadius": "radius"
6891
+ }
6892
+ },
6893
+ "required": false,
6894
+ "description": ""
6895
+ },
6896
+ "variant": {
6897
+ "type": {
6898
+ "name": "objectOf",
6899
+ "value": {
6900
+ "name": "union",
6901
+ "value": [
6902
+ {
6903
+ "name": "string"
6904
+ },
6905
+ {
6906
+ "name": "number"
6907
+ },
6908
+ {
6909
+ "name": "bool"
6910
+ }
6911
+ ]
6912
+ }
6913
+ },
6914
+ "required": false,
6915
+ "description": ""
6916
+ }
6917
+ },
6918
+ "attributes": {
6919
+ "acceptsRNA11yProps": false
6920
+ }
6921
+ }
6922
+ },
6759
6923
  "Spacer": {
6760
6924
  "docs": {
6761
6925
  "description": "An empty element used to create a gap between components that is sized according to the theme spacing scale,\npassing its `space` prop ({@link SpacingValue}) to `useSpacingScale`.\n\n## Simple spacing\n\nFor most simple uses, pass a number to Spacer's `space` prop referring to an index in the theme's\nspacing scale. For example, for a spacer of the theme's smallest non-zero spacing size:\n\n```jsx\n<Spacer space={1} />\n```\n\n## Responsive spacing\n\nDifferent spacing scale sizes may be chosen for different viewports by passing `space` a {@link SpacingObject}\nusing keys for the viewports at and above which certain spacing indexes should apply.\n\nThis can be useful when a Spacer is inside a layout with a shape that changes between viewports.\n\nFor example, a spacer might need no width below 'md' viewport because the items it separates will be on separate lines,\nbut may need a visible size above that viewport, and a wider size at the highest viewport:\n\n```jsx\n<Spacer space={{ xs: 0, md: 2, xl: 3 }} />\n```\n\nNote that themes may also define viewport-specific behaviour for indexes on the spacing scale. These viewport\nprops should only be used where necessary to achieve a certain responsive layoutm and shouldn't be used to replace\nor deviate from responsive spacing behaviour in a theme that is intended to apply universally.\n\n## More options\n\nSee `useSpacingScale` hook for more options that may be used with the `space` prop.\n\n## Accessibility\n\nSpacer has no content and is ignored by tools such as screen readers. Use `Divider` for\nseparations between elements that may be treated as semantically meaningful on web.",
@@ -7472,6 +7636,28 @@
7472
7636
  "docs": {
7473
7637
  "description": "",
7474
7638
  "props": {
7639
+ "themeOptions": {
7640
+ "defaultValue": {
7641
+ "value": "{ forceAbsoluteFontSizing: true }",
7642
+ "computed": false
7643
+ },
7644
+ "type": {
7645
+ "name": "shape",
7646
+ "value": {
7647
+ "forceAbsoluteFontSizing": {
7648
+ "name": "bool",
7649
+ "required": false
7650
+ },
7651
+ "contentMaxWidth": {
7652
+ "name": "custom",
7653
+ "raw": "responsiveProps.getTypeOptionallyByViewport(PropTypes.number)",
7654
+ "required": false
7655
+ }
7656
+ }
7657
+ },
7658
+ "required": false,
7659
+ "description": "An object containing options allowing to customize the theming experience:\n\n- `forceAbsoluteFontSizing`: available on web only; when set to true, allows\n using absolute font sizing (in pixels, doesn't scale) instead of the\n relative sizing (in `rem`, scales depending on the browser settings)\n- `contentMaxWidth`: allows configuration of the content max width to be used in components\n such as Footnote and Notification to avoid content to stretch width more then the page's width"
7660
+ },
7475
7661
  "children": {
7476
7662
  "type": {
7477
7663
  "name": "node"
@@ -7969,6 +8155,9 @@
7969
8155
  "paddingBottom": "size",
7970
8156
  "width": "size",
7971
8157
  "minWidth": "size",
8158
+ "iconSize": "size",
8159
+ "iconSpace": "integer",
8160
+ "icon": "icon",
7972
8161
  "outerBorderColor": "color",
7973
8162
  "outerBorderWidth": "border",
7974
8163
  "outerBorderGap": "size",
@@ -8007,6 +8196,59 @@
8007
8196
  "required": false,
8008
8197
  "description": "Function called when the button is pressed. Required unless the button has a href."
8009
8198
  },
8199
+ "iconProps": {
8200
+ "type": {
8201
+ "name": "exact",
8202
+ "value": {
8203
+ "variant": {
8204
+ "name": "custom",
8205
+ "raw": "variantProp.propType",
8206
+ "required": false
8207
+ },
8208
+ "tokens": {
8209
+ "name": "custom",
8210
+ "raw": "getTokensPropType('Icon')",
8211
+ "required": false
8212
+ },
8213
+ "accessibilityLabel": {
8214
+ "name": "string",
8215
+ "description": "Descriptive label used in web SVG title tag for accessibility",
8216
+ "required": false
8217
+ },
8218
+ "scalesWithText": {
8219
+ "name": "bool",
8220
+ "description": "controls whether the icon size should be proportionate to any accessibility-related font scaling.",
8221
+ "required": false
8222
+ }
8223
+ }
8224
+ },
8225
+ "required": false,
8226
+ "description": "Optional variant that may be passed down to the link's icon if there is one"
8227
+ },
8228
+ "iconPosition": {
8229
+ "type": {
8230
+ "name": "enum",
8231
+ "value": [
8232
+ {
8233
+ "value": "'left'",
8234
+ "computed": false
8235
+ },
8236
+ {
8237
+ "value": "'right'",
8238
+ "computed": false
8239
+ }
8240
+ ]
8241
+ },
8242
+ "required": false,
8243
+ "description": "When `icon` is provided, use `iconPosition` to place the Icon to the left or right side of the button."
8244
+ },
8245
+ "icon": {
8246
+ "type": {
8247
+ "name": "func"
8248
+ },
8249
+ "required": false,
8250
+ "description": "A function component for an SVG icon to render inside the link. Inherits size and color from\nthe link and any Typography the link is nested inside."
8251
+ },
8010
8252
  "variant": {
8011
8253
  "type": {
8012
8254
  "name": "objectOf",
@@ -8108,6 +8350,27 @@
8108
8350
  "required": false,
8109
8351
  "description": "If true, the buttons cannot be interacted with, elements are set as `disabled` and if the\ntheme supports `inactive` appearances rules, these are applied."
8110
8352
  },
8353
+ "hintPosition": {
8354
+ "defaultValue": {
8355
+ "value": "'inline'",
8356
+ "computed": false
8357
+ },
8358
+ "type": {
8359
+ "name": "enum",
8360
+ "value": [
8361
+ {
8362
+ "value": "'inline'",
8363
+ "computed": false
8364
+ },
8365
+ {
8366
+ "value": "'below'",
8367
+ "computed": false
8368
+ }
8369
+ ]
8370
+ },
8371
+ "required": false,
8372
+ "description": "Position of the hint relative to label. Use `below` to display a larger hint below the label."
8373
+ },
8111
8374
  "accessibilityRole": {
8112
8375
  "defaultValue": {
8113
8376
  "value": "maxValues === 1\n? 'radiogroup' // radiogroup is cross-platform; only web aria has generic groups\n: Platform.select({ web: 'group', default: 'none' })",
@@ -8281,6 +8544,9 @@
8281
8544
  "paddingBottom": "size",
8282
8545
  "width": "size",
8283
8546
  "minWidth": "size",
8547
+ "iconSize": "size",
8548
+ "iconSpace": "integer",
8549
+ "icon": "icon",
8284
8550
  "outerBorderColor": "color",
8285
8551
  "outerBorderWidth": "border",
8286
8552
  "outerBorderGap": "size",
@@ -8319,23 +8585,76 @@
8319
8585
  "required": false,
8320
8586
  "description": "Function called when the button is pressed. Required unless the button has a href."
8321
8587
  },
8322
- "variant": {
8588
+ "iconProps": {
8323
8589
  "type": {
8324
- "name": "objectOf",
8590
+ "name": "exact",
8325
8591
  "value": {
8326
- "name": "union",
8327
- "value": [
8328
- {
8329
- "name": "string"
8330
- },
8331
- {
8332
- "name": "number"
8333
- },
8334
- {
8335
- "name": "bool"
8336
- }
8337
- ]
8338
- }
8592
+ "variant": {
8593
+ "name": "custom",
8594
+ "raw": "variantProp.propType",
8595
+ "required": false
8596
+ },
8597
+ "tokens": {
8598
+ "name": "custom",
8599
+ "raw": "getTokensPropType('Icon')",
8600
+ "required": false
8601
+ },
8602
+ "accessibilityLabel": {
8603
+ "name": "string",
8604
+ "description": "Descriptive label used in web SVG title tag for accessibility",
8605
+ "required": false
8606
+ },
8607
+ "scalesWithText": {
8608
+ "name": "bool",
8609
+ "description": "controls whether the icon size should be proportionate to any accessibility-related font scaling.",
8610
+ "required": false
8611
+ }
8612
+ }
8613
+ },
8614
+ "required": false,
8615
+ "description": "Optional variant that may be passed down to the link's icon if there is one"
8616
+ },
8617
+ "iconPosition": {
8618
+ "type": {
8619
+ "name": "enum",
8620
+ "value": [
8621
+ {
8622
+ "value": "'left'",
8623
+ "computed": false
8624
+ },
8625
+ {
8626
+ "value": "'right'",
8627
+ "computed": false
8628
+ }
8629
+ ]
8630
+ },
8631
+ "required": false,
8632
+ "description": "When `icon` is provided, use `iconPosition` to place the Icon to the left or right side of the button."
8633
+ },
8634
+ "icon": {
8635
+ "type": {
8636
+ "name": "func"
8637
+ },
8638
+ "required": false,
8639
+ "description": "A function component for an SVG icon to render inside the link. Inherits size and color from\nthe link and any Typography the link is nested inside."
8640
+ },
8641
+ "variant": {
8642
+ "type": {
8643
+ "name": "objectOf",
8644
+ "value": {
8645
+ "name": "union",
8646
+ "value": [
8647
+ {
8648
+ "name": "string"
8649
+ },
8650
+ {
8651
+ "name": "number"
8652
+ },
8653
+ {
8654
+ "name": "bool"
8655
+ }
8656
+ ]
8657
+ }
8339
8658
  },
8340
8659
  "required": false,
8341
8660
  "description": ""
@@ -8493,6 +8812,13 @@
8493
8812
  "required": false,
8494
8813
  "description": "Minimal part of slide width must be swiped for changing index.\nOtherwise animation restore current slide. Default value 0.2 means that 20% must be swiped for change index"
8495
8814
  },
8815
+ "title": {
8816
+ "defaultValue": {
8817
+ "value": "'carousel'",
8818
+ "computed": false
8819
+ },
8820
+ "required": false
8821
+ },
8496
8822
  "springConfig": {
8497
8823
  "defaultValue": {
8498
8824
  "value": "undefined",
@@ -8504,6 +8830,45 @@
8504
8830
  "required": false,
8505
8831
  "description": "Carousel uses `Animated.spring` to animate slide changes, use this option to pass custom animation configuration"
8506
8832
  },
8833
+ "thumbnails": {
8834
+ "defaultValue": {
8835
+ "value": "undefined",
8836
+ "computed": true
8837
+ },
8838
+ "type": {
8839
+ "name": "arrayOf",
8840
+ "value": {
8841
+ "name": "shape",
8842
+ "value": {
8843
+ "accessibilityLabel": {
8844
+ "name": "string",
8845
+ "required": false
8846
+ },
8847
+ "alt": {
8848
+ "name": "string",
8849
+ "required": false
8850
+ },
8851
+ "src": {
8852
+ "name": "string",
8853
+ "required": false
8854
+ }
8855
+ }
8856
+ }
8857
+ },
8858
+ "required": false,
8859
+ "description": "An array of objects containing information on the thumbnails to be rendered as navigation panel"
8860
+ },
8861
+ "panelNavigation": {
8862
+ "defaultValue": {
8863
+ "value": "thumbnails ? (\n <CarouselThumbnailNavigation thumbnails={thumbnails} />\n) : (\n <CarouselStepTracker />\n)",
8864
+ "computed": false
8865
+ },
8866
+ "type": {
8867
+ "name": "element"
8868
+ },
8869
+ "required": false,
8870
+ "description": "Use this to render a custom panel navigation element instead of the default StepTracker's based navigation\nYou can make use of `useCarousel` within your custom panel navigation component to hook into various Carousel states such as:\n- activeIndex: index of current slide\n- totalItems: total number of slides\nUse it as follows:\n```js\n <Carousel\n panelNavigation={<CustomPanelNavigation />}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```"
8871
+ },
8507
8872
  "tag": {
8508
8873
  "defaultValue": {
8509
8874
  "value": "'ul'",
@@ -8593,27 +8958,23 @@
8593
8958
  "required": false,
8594
8959
  "description": "HTML tag to use for the Carousel item's immediate parent. Defaults to `'ul'` so that\nassistive technology tools know to intepret the carousel as a list.\n\nNote that if the immediate Carousel children do not all render as `'li'` elements,\nthis should be changed (e.g. pass tag=\"div\") because only 'li' is a valid child of 'ul'."
8595
8960
  },
8596
- "accessibilityRole": {
8961
+ "accessibilityLabel": {
8597
8962
  "defaultValue": {
8598
- "value": "'adjustable'",
8599
- "computed": false
8963
+ "value": "title",
8964
+ "computed": true
8600
8965
  },
8601
8966
  "type": {
8602
8967
  "name": "string"
8603
8968
  },
8604
8969
  "required": false,
8605
- "description": "Provide custom accessibilityRole for Carousel container"
8970
+ "description": "Provide custom accessibilityLabel for Carousel container"
8606
8971
  },
8607
- "accessibilityLabel": {
8972
+ "accessibilityLiveRegion": {
8608
8973
  "defaultValue": {
8609
- "value": "'carousel'",
8974
+ "value": "'polite'",
8610
8975
  "computed": false
8611
8976
  },
8612
- "type": {
8613
- "name": "string"
8614
- },
8615
- "required": false,
8616
- "description": "Provide custom accessibilityLabel for Carousel container"
8977
+ "required": false
8617
8978
  },
8618
8979
  "tokens": {
8619
8980
  "type": {
@@ -8624,7 +8985,16 @@
8624
8985
  "showPreviousNextNavigation": "show",
8625
8986
  "showPanelNavigation": "show",
8626
8987
  "spaceBetweenSlideAndPreviousNextNavigation": "size",
8627
- "spaceBetweenSlideAndPanelNavigation": "size"
8988
+ "spaceBetweenSlideAndPanelNavigation": "size",
8989
+ "thumbnailBorderColor": "color",
8990
+ "thumbnailBorderRadius": "radius",
8991
+ "thumbnailBorderWidth": "border",
8992
+ "thumbnailContainerPaddingTop": "size",
8993
+ "thumbnailMargin": "size",
8994
+ "thumbnailPadding": "size",
8995
+ "thumbnailSelectedBorderColor": "color",
8996
+ "thumbnailSelectedBorderWidth": "border",
8997
+ "thumbnailSize": "size"
8628
8998
  }
8629
8999
  },
8630
9000
  "required": false,
@@ -8676,12 +9046,19 @@
8676
9046
  "required": false,
8677
9047
  "description": "Called when active index changed\nThis function is also provided with a parameter indicating changed index (either 1, or -1)\nUse it as follows:\n```js\n const onIndexChangedCallback = React.useCallback((changedIndex) => {\n console.log(changedIndex)\n }, []) // pass local dependencies as per your component\n <Carousel\n onIndexChanged={onIndexChangedCallback}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```\nCaution: Always consider wrapping your callback for `onIndexChanged` in `useCallback` in order to avoid bugs and performance issues"
8678
9048
  },
8679
- "onRenderPanelNavigation": {
9049
+ "skipLinkHref": {
8680
9050
  "type": {
8681
- "name": "func"
9051
+ "name": "string"
9052
+ },
9053
+ "required": false,
9054
+ "description": "If this is a complex carousel with a lot of focusable content, pass a href for a skip link. Typically, this will be an anchor link\nwith the ID of a focusable element immediately after the Carousel, e.g. `'#section-2-heading'`."
9055
+ },
9056
+ "refocus": {
9057
+ "type": {
9058
+ "name": "bool"
8682
9059
  },
8683
9060
  "required": false,
8684
- "description": "Use this to render a custom panel navigation element instead of dots navigation\nThis function is also provided with an object with the following properties\nactiveIndex: index of current slide\ntotalItems: total number of slides\nUse it as follows:\n```js\n <Carousel\n onRenderPanelNavigation={({ totalItems, activeIndex }) => <Text>Showing {activeIndex + 1}</Text>}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```"
9061
+ "description": "If true, whenever a new slide comes into view, the focus of the Carousel switches to the start.\n\nPass this as true when using carousel items that contain interactive content, so a user can easily tab into that content.\n\nIf skipLinkHref is passed, the focus target will be the SkipLink; if not, it'll be an empty element before the slide content."
8685
9062
  },
8686
9063
  "onAnimationStart": {
8687
9064
  "type": {
@@ -8725,6 +9102,13 @@
8725
9102
  },
8726
9103
  "required": false,
8727
9104
  "description": "Use this to override the default text for panel navigation"
9105
+ },
9106
+ "accessibilityRole": {
9107
+ "type": {
9108
+ "name": "string"
9109
+ },
9110
+ "required": false,
9111
+ "description": "Provide custom accessibilityRole for Carousel container"
8728
9112
  }
8729
9113
  },
8730
9114
  "attributes": {
@@ -8848,18 +9232,379 @@
8848
9232
  "name": "node"
8849
9233
  }
8850
9234
  },
8851
- {
8852
- "name": "node"
8853
- }
8854
- ]
8855
- },
8856
- "required": true,
8857
- "description": "Content of the slide"
8858
- }
9235
+ {
9236
+ "name": "node"
9237
+ }
9238
+ ]
9239
+ },
9240
+ "required": true,
9241
+ "description": "Content of the slide"
9242
+ }
9243
+ },
9244
+ "attributes": {
9245
+ "acceptsRNA11yProps": false
9246
+ }
9247
+ }
9248
+ }
9249
+ },
9250
+ "CarouselTabs": {
9251
+ "docs": {
9252
+ "description": "",
9253
+ "props": {
9254
+ "refocus": {
9255
+ "defaultValue": {
9256
+ "value": "true",
9257
+ "computed": false
9258
+ },
9259
+ "type": {
9260
+ "name": "bool"
9261
+ },
9262
+ "required": false,
9263
+ "description": "If true, whenever a new slide comes into view, the focus of the Carousel switches to the start.\n\nPass this as true when using carousel items that contain interactive content, so a user can easily tab into that content.\n\nIf skipLinkHref is passed, the focus target will be the SkipLink; if not, it'll be an empty element before the slide content."
9264
+ },
9265
+ "items": {
9266
+ "type": {
9267
+ "name": "arrayOf",
9268
+ "value": {
9269
+ "name": "shape",
9270
+ "value": {
9271
+ "title": {
9272
+ "name": "string",
9273
+ "required": true
9274
+ },
9275
+ "content": {
9276
+ "name": "node",
9277
+ "required": true
9278
+ }
9279
+ }
9280
+ }
9281
+ },
9282
+ "required": false,
9283
+ "description": "An array of objects where title is the string shown in the slide's tab and content is the JSX for the slide itself"
9284
+ },
9285
+ "tokens": {
9286
+ "type": {
9287
+ "name": "custom",
9288
+ "raw": {
9289
+ "nextIcon": "icon",
9290
+ "previousIcon": "icon",
9291
+ "showPreviousNextNavigation": "show",
9292
+ "showPanelNavigation": "show",
9293
+ "spaceBetweenSlideAndPreviousNextNavigation": "size",
9294
+ "spaceBetweenSlideAndPanelNavigation": "size",
9295
+ "thumbnailBorderColor": "color",
9296
+ "thumbnailBorderRadius": "radius",
9297
+ "thumbnailBorderWidth": "border",
9298
+ "thumbnailContainerPaddingTop": "size",
9299
+ "thumbnailMargin": "size",
9300
+ "thumbnailPadding": "size",
9301
+ "thumbnailSelectedBorderColor": "color",
9302
+ "thumbnailSelectedBorderWidth": "border",
9303
+ "thumbnailSize": "size"
9304
+ }
9305
+ },
9306
+ "required": false,
9307
+ "description": ""
9308
+ },
9309
+ "variant": {
9310
+ "type": {
9311
+ "name": "objectOf",
9312
+ "value": {
9313
+ "name": "union",
9314
+ "value": [
9315
+ {
9316
+ "name": "string"
9317
+ },
9318
+ {
9319
+ "name": "number"
9320
+ },
9321
+ {
9322
+ "name": "bool"
9323
+ }
9324
+ ]
9325
+ }
9326
+ },
9327
+ "required": false,
9328
+ "description": ""
9329
+ },
9330
+ "children": {
9331
+ "type": {
9332
+ "name": "union",
9333
+ "value": [
9334
+ {
9335
+ "name": "arrayOf",
9336
+ "value": {
9337
+ "name": "node"
9338
+ }
9339
+ },
9340
+ {
9341
+ "name": "node"
9342
+ }
9343
+ ]
9344
+ },
9345
+ "required": true,
9346
+ "description": "Slides to render in Carousel. Wrap individual slides in `Carousel.Item`"
9347
+ },
9348
+ "itemLabel": {
9349
+ "type": {
9350
+ "name": "string"
9351
+ },
9352
+ "required": false,
9353
+ "description": "Lowercase language-appropriate user-facing description of what each Carousel slide represents.\nThis is used when generating item labels. For example, if a carousel contains offers,\npass itemLabel=\"summer offer\" (or copy=\"fr\" and an appropriate French translation) to genereate\naccessible labels such as \"Summer offer 1 of 3\" and \"Show summer offer 2 of 3\"."
9354
+ },
9355
+ "previousNextNavigationPosition": {
9356
+ "type": {
9357
+ "name": "enum",
9358
+ "value": [
9359
+ {
9360
+ "value": "'inside'",
9361
+ "computed": false
9362
+ },
9363
+ {
9364
+ "value": "'outside'",
9365
+ "computed": false
9366
+ },
9367
+ {
9368
+ "value": "'edge'",
9369
+ "computed": false
9370
+ }
9371
+ ]
9372
+ },
9373
+ "required": false,
9374
+ "description": "`inside` renders the previous and next buttons inside the slide\n`outside` renders the previous and next buttons outside the slide\n`edge` renders the previous and next buttons at the edge of the slide"
9375
+ },
9376
+ "previousNextIconSize": {
9377
+ "type": {
9378
+ "name": "enum",
9379
+ "value": [
9380
+ {
9381
+ "value": "'default'",
9382
+ "computed": false
9383
+ },
9384
+ {
9385
+ "value": "'small'",
9386
+ "computed": false
9387
+ },
9388
+ {
9389
+ "value": "'large'",
9390
+ "computed": false
9391
+ }
9392
+ ]
9393
+ },
9394
+ "required": false,
9395
+ "description": "Defines the size of the `IconButton` which is being used to render next and previous buttons"
9396
+ },
9397
+ "springConfig": {
9398
+ "type": {
9399
+ "name": "object"
9400
+ },
9401
+ "required": false,
9402
+ "description": "Carousel uses `Animated.spring` to animate slide changes, use this option to pass custom animation configuration"
9403
+ },
9404
+ "thumbnails": {
9405
+ "type": {
9406
+ "name": "arrayOf",
9407
+ "value": {
9408
+ "name": "shape",
9409
+ "value": {
9410
+ "accessibilityLabel": {
9411
+ "name": "string",
9412
+ "required": false
9413
+ },
9414
+ "alt": {
9415
+ "name": "string",
9416
+ "required": false
9417
+ },
9418
+ "src": {
9419
+ "name": "string",
9420
+ "required": false
9421
+ }
9422
+ }
9423
+ }
9424
+ },
9425
+ "required": false,
9426
+ "description": "An array of objects containing information on the thumbnails to be rendered as navigation panel"
9427
+ },
9428
+ "minDistanceForAction": {
9429
+ "type": {
9430
+ "name": "number"
9431
+ },
9432
+ "required": false,
9433
+ "description": "Minimal part of slide width must be swiped for changing index.\nOtherwise animation restore current slide. Default value 0.2 means that 20% must be swiped for change index"
9434
+ },
9435
+ "minDistanceToCapture": {
9436
+ "type": {
9437
+ "name": "number"
9438
+ },
9439
+ "required": false,
9440
+ "description": "Initiate animation after swipe this distance."
9441
+ },
9442
+ "onIndexChanged": {
9443
+ "type": {
9444
+ "name": "func"
9445
+ },
9446
+ "required": false,
9447
+ "description": "Called when active index changed\nThis function is also provided with a parameter indicating changed index (either 1, or -1)\nUse it as follows:\n```js\n const onIndexChangedCallback = React.useCallback((changedIndex) => {\n console.log(changedIndex)\n }, []) // pass local dependencies as per your component\n <Carousel\n onIndexChanged={onIndexChangedCallback}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```\nCaution: Always consider wrapping your callback for `onIndexChanged` in `useCallback` in order to avoid bugs and performance issues"
9448
+ },
9449
+ "skipLinkHref": {
9450
+ "type": {
9451
+ "name": "string"
9452
+ },
9453
+ "required": false,
9454
+ "description": "If this is a complex carousel with a lot of focusable content, pass a href for a skip link. Typically, this will be an anchor link\nwith the ID of a focusable element immediately after the Carousel, e.g. `'#section-2-heading'`."
9455
+ },
9456
+ "panelNavigation": {
9457
+ "type": {
9458
+ "name": "element"
9459
+ },
9460
+ "required": false,
9461
+ "description": "Use this to render a custom panel navigation element instead of the default StepTracker's based navigation\nYou can make use of `useCarousel` within your custom panel navigation component to hook into various Carousel states such as:\n- activeIndex: index of current slide\n- totalItems: total number of slides\nUse it as follows:\n```js\n <Carousel\n panelNavigation={<CustomPanelNavigation />}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```"
9462
+ },
9463
+ "onAnimationStart": {
9464
+ "type": {
9465
+ "name": "func"
9466
+ },
9467
+ "required": false,
9468
+ "description": "When slide animation start\nThis function is also provided with a parameter indicating the current slide index before animation starts\nUse it as follows:\n```js\n const onAnimationStartCallback = React.useCallback((currentIndex) => {\n console.log(currentIndex)\n }, []) // pass local dependencies as per your component\n <Carousel\n onAnimationStart={onAnimationStartCallback}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```\nCaution: Always consider wrapping your callback for `onAnimationStart` in `useCallback` in order to avoid bugs and performance issues"
9469
+ },
9470
+ "onAnimationEnd": {
9471
+ "type": {
9472
+ "name": "func"
9473
+ },
9474
+ "required": false,
9475
+ "description": "When slide animation end with parameter of current index (after animation ends)\nThis function is also provided with a parameter indicating the updated slide index after animation ends\nUse it as follows:\n```js\n const onAnimationEndCallback = React.useCallback((changedIndex) => {\n console.log(changedIndex)\n }, []) // pass local dependencies as per your component\n <Carousel\n onAnimationEnd={onAnimationEndCallback}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```\nCaution: Always consider wrapping your callback for `onAnimationEnd` in `useCallback` in order to avoid bugs and performance issues"
9476
+ },
9477
+ "panelNavigationTextDictionary": {
9478
+ "type": {
9479
+ "name": "shape",
9480
+ "value": {
9481
+ "en": {
9482
+ "name": "shape",
9483
+ "value": {
9484
+ "stepTrackerLabel": {
9485
+ "name": "string",
9486
+ "required": true
9487
+ }
9488
+ },
9489
+ "required": false
9490
+ },
9491
+ "fr": {
9492
+ "name": "shape",
9493
+ "value": {
9494
+ "stepTrackerLabel": {
9495
+ "name": "string",
9496
+ "required": true
9497
+ }
9498
+ },
9499
+ "required": false
9500
+ }
9501
+ }
9502
+ },
9503
+ "required": false,
9504
+ "description": "Use this to override the default text for panel navigation"
8859
9505
  },
8860
- "attributes": {
8861
- "acceptsRNA11yProps": false
9506
+ "accessibilityRole": {
9507
+ "type": {
9508
+ "name": "string"
9509
+ },
9510
+ "required": false,
9511
+ "description": "Provide custom accessibilityRole for Carousel container"
9512
+ },
9513
+ "accessibilityLabel": {
9514
+ "type": {
9515
+ "name": "string"
9516
+ },
9517
+ "required": false,
9518
+ "description": "Provide custom accessibilityLabel for Carousel container"
9519
+ },
9520
+ "tag": {
9521
+ "type": {
9522
+ "name": "enum",
9523
+ "value": [
9524
+ {
9525
+ "value": "'h1'",
9526
+ "computed": false
9527
+ },
9528
+ {
9529
+ "value": "'h2'",
9530
+ "computed": false
9531
+ },
9532
+ {
9533
+ "value": "'h3'",
9534
+ "computed": false
9535
+ },
9536
+ {
9537
+ "value": "'h4'",
9538
+ "computed": false
9539
+ },
9540
+ {
9541
+ "value": "'h5'",
9542
+ "computed": false
9543
+ },
9544
+ {
9545
+ "value": "'h6'",
9546
+ "computed": false
9547
+ },
9548
+ {
9549
+ "value": "'article'",
9550
+ "computed": false
9551
+ },
9552
+ {
9553
+ "value": "'aside'",
9554
+ "computed": false
9555
+ },
9556
+ {
9557
+ "value": "'blockquote'",
9558
+ "computed": false
9559
+ },
9560
+ {
9561
+ "value": "'footer'",
9562
+ "computed": false
9563
+ },
9564
+ {
9565
+ "value": "'figure'",
9566
+ "computed": false
9567
+ },
9568
+ {
9569
+ "value": "'form'",
9570
+ "computed": false
9571
+ },
9572
+ {
9573
+ "value": "'header'",
9574
+ "computed": false
9575
+ },
9576
+ {
9577
+ "value": "'ul'",
9578
+ "computed": false
9579
+ },
9580
+ {
9581
+ "value": "'li'",
9582
+ "computed": false
9583
+ },
9584
+ {
9585
+ "value": "'main'",
9586
+ "computed": false
9587
+ },
9588
+ {
9589
+ "value": "'nav'",
9590
+ "computed": false
9591
+ },
9592
+ {
9593
+ "value": "'section'",
9594
+ "computed": false
9595
+ },
9596
+ {
9597
+ "value": "'label'",
9598
+ "computed": false
9599
+ }
9600
+ ]
9601
+ },
9602
+ "required": false,
9603
+ "description": "HTML tag to use for the Carousel item's immediate parent. Defaults to `'ul'` so that\nassistive technology tools know to intepret the carousel as a list.\n\nNote that if the immediate Carousel children do not all render as `'li'` elements,\nthis should be changed (e.g. pass tag=\"div\") because only 'li' is a valid child of 'ul'."
8862
9604
  }
9605
+ },
9606
+ "attributes": {
9607
+ "acceptsRNA11yProps": false
8863
9608
  }
8864
9609
  }
8865
9610
  },
@@ -8867,6 +9612,17 @@
8867
9612
  "docs": {
8868
9613
  "description": "",
8869
9614
  "props": {
9615
+ "refocus": {
9616
+ "defaultValue": {
9617
+ "value": "false",
9618
+ "computed": false
9619
+ },
9620
+ "type": {
9621
+ "name": "bool"
9622
+ },
9623
+ "required": false,
9624
+ "description": ""
9625
+ },
8870
9626
  "children": {
8871
9627
  "type": {
8872
9628
  "name": "arrayOf",
@@ -8884,23 +9640,61 @@
8884
9640
  "required": true,
8885
9641
  "description": ""
8886
9642
  },
8887
- "totalItems": {
9643
+ "goTo": {
8888
9644
  "type": {
8889
- "name": "number"
9645
+ "name": "func"
8890
9646
  },
8891
9647
  "required": true,
8892
9648
  "description": ""
8893
9649
  },
8894
- "width": {
9650
+ "getCopyWithPlaceholders": {
9651
+ "type": {
9652
+ "name": "func"
9653
+ },
9654
+ "required": true,
9655
+ "description": ""
9656
+ },
9657
+ "itemLabel": {
9658
+ "type": {
9659
+ "name": "string"
9660
+ },
9661
+ "required": true,
9662
+ "description": ""
9663
+ },
9664
+ "themeTokens": {
9665
+ "type": {
9666
+ "name": "custom",
9667
+ "raw": {
9668
+ "nextIcon": "icon",
9669
+ "previousIcon": "icon",
9670
+ "showPreviousNextNavigation": "show",
9671
+ "showPanelNavigation": "show",
9672
+ "spaceBetweenSlideAndPreviousNextNavigation": "size",
9673
+ "spaceBetweenSlideAndPanelNavigation": "size",
9674
+ "thumbnailBorderColor": "color",
9675
+ "thumbnailBorderRadius": "radius",
9676
+ "thumbnailBorderWidth": "border",
9677
+ "thumbnailContainerPaddingTop": "size",
9678
+ "thumbnailMargin": "size",
9679
+ "thumbnailPadding": "size",
9680
+ "thumbnailSelectedBorderColor": "color",
9681
+ "thumbnailSelectedBorderWidth": "border",
9682
+ "thumbnailSize": "size"
9683
+ }
9684
+ },
9685
+ "required": false,
9686
+ "description": ""
9687
+ },
9688
+ "totalItems": {
8895
9689
  "type": {
8896
9690
  "name": "number"
8897
9691
  },
8898
9692
  "required": true,
8899
9693
  "description": ""
8900
9694
  },
8901
- "goTo": {
9695
+ "width": {
8902
9696
  "type": {
8903
- "name": "func"
9697
+ "name": "number"
8904
9698
  },
8905
9699
  "required": true,
8906
9700
  "description": ""
@@ -8913,7 +9707,7 @@
8913
9707
  },
8914
9708
  "CheckboxGroup": {
8915
9709
  "docs": {
8916
- "description": "A group of Checkboxs that behave as a fieldset. Use when users select any number of choices from options.\n\n## Component API\n\nUse the `items` prop to pass an array of objects describing each Checkbox in the group:\n\n - `label`: main text passed to CheckboxGroup's `label` prop\n - `id`: identifier used to store which CheckboxGroup is selected (uses `label` if undefinded)\n - `onChange`: optional function called on selection, in addition to updating the group's selection state\n\n### Controlled version\n\nIf the selection state is controlled from outside, it needs to receive `checkedId` and `onChange` props.\n\n### Uncontrolled version\n\nIf the CheckboxGroup manages its own state, you can use `initialCheckedId` prop to provide the initial value.\nWhenever the radio card gets toggled, it calls the `onChange` callback with the new value (string).\n\n### Use in forms\n\nFor web forms, the `name` prop may be used to define the name of the group's `fieldset` and input elements.\n\n### Validation\n\nValidation state may be set by passing 'error' or 'success' to the `validation` prop.\n\n## A11y guidelines\n\nCheckboxGroup accepts all the common accessibility props, and controls the accessibility state\nof children like Checkbox and Feedback based on current state.\n\n@example\n```jsx\n<CheckboxGroup\n initialCheckedId=\"check1\"\n items={[\n { label: 'Checkbox 1', id: 'check1' },\n { label: 'Checkbox 2', id: 'check2' },\n { label: 'Checkbox 3', id: 'check3' }\n ]}\n legend=\"Checkboxes\"\n hint=\"Choose from these options\"\n/>\n```",
9710
+ "description": "A group of Checkboxs that behave as a fieldset. Use when users select any number of choices from options.\n\n## Component API\n\nUse the `items` prop to pass an array of objects describing each Checkbox in the group:\n\n - `label`: main text passed to CheckboxGroup's `label` prop\n - `id`: identifier used to store which CheckboxGroup is selected (uses `label` if undefinded)\n - `onChange`: optional function called on selection, in addition to updating the group's selection state\n\n### Controlled version\n\nIf the selection state is controlled from outside, it needs to receive `checkedId` and `onChange` props.\n\n### Uncontrolled version\n\nIf the CheckboxGroup manages its own state, you can use `initialCheckedId` prop to provide the initial value.\nWhenever the radio card gets toggled, it calls the `onChange` callback with the new value (string).\n\n### Use in forms\n\nFor web forms, the `name` prop may be used to define the name of the group's `fieldset` and input elements.\n\n### Validation\n\nValidation state may be set by passing 'error' or 'success' to the `validation` prop.\n\n## A11y guidelines\n\nCheckboxGroup accepts all the common accessibility props, and controls the accessibility state\nof children like Checkbox and Feedback based on current state.\n\n@example\n```jsx\n<CheckboxGroup\n initialCheckedIds=\"check1\"\n items={[\n { label: 'Checkbox 1', id: 'check1' },\n { label: 'Checkbox 2', id: 'check2' },\n { label: 'Checkbox 3', id: 'check3' }\n ]}\n legend=\"Checkboxes\"\n hint=\"Choose from these options\"\n/>\n```",
8917
9711
  "props": {
8918
9712
  "items": {
8919
9713
  "defaultValue": {
@@ -8948,6 +9742,27 @@
8948
9742
  "required": false,
8949
9743
  "description": "Array of objects containing specifics for each Checkbox to be rendered in the group."
8950
9744
  },
9745
+ "hintPosition": {
9746
+ "defaultValue": {
9747
+ "value": "'inline'",
9748
+ "computed": false
9749
+ },
9750
+ "type": {
9751
+ "name": "enum",
9752
+ "value": [
9753
+ {
9754
+ "value": "'inline'",
9755
+ "computed": false
9756
+ },
9757
+ {
9758
+ "value": "'below'",
9759
+ "computed": false
9760
+ }
9761
+ ]
9762
+ },
9763
+ "required": false,
9764
+ "description": "Position of the hint relative to label. Use `below` to display a larger hint below the label."
9765
+ },
8951
9766
  "tokens": {
8952
9767
  "type": {
8953
9768
  "name": "custom",
@@ -9268,7 +10083,7 @@
9268
10083
  },
9269
10084
  "icon": {
9270
10085
  "type": {
9271
- "name": "func"
10086
+ "name": "elementType"
9272
10087
  },
9273
10088
  "required": false,
9274
10089
  "description": "A valid UDS icon component imported from a UDS palette."
@@ -9515,7 +10330,7 @@
9515
10330
  },
9516
10331
  "icon": {
9517
10332
  "type": {
9518
- "name": "func"
10333
+ "name": "elementType"
9519
10334
  },
9520
10335
  "required": false,
9521
10336
  "description": "A function component for an SVG icon to render inside the link. Inherits size and color from\nthe link and any Typography the link is nested inside."
@@ -9647,6 +10462,27 @@
9647
10462
  "required": false,
9648
10463
  "description": "Array of objects containing specifics for each Radio to be rendered in the group."
9649
10464
  },
10465
+ "hintPosition": {
10466
+ "defaultValue": {
10467
+ "value": "'inline'",
10468
+ "computed": false
10469
+ },
10470
+ "type": {
10471
+ "name": "enum",
10472
+ "value": [
10473
+ {
10474
+ "value": "'inline'",
10475
+ "computed": false
10476
+ },
10477
+ {
10478
+ "value": "'below'",
10479
+ "computed": false
10480
+ }
10481
+ ]
10482
+ },
10483
+ "required": false,
10484
+ "description": "Position of the hint relative to label. Use `below` to display a larger hint below the label."
10485
+ },
9650
10486
  "tokens": {
9651
10487
  "type": {
9652
10488
  "name": "custom",
@@ -9866,6 +10702,27 @@
9866
10702
  "required": false,
9867
10703
  "description": "Array of objects containing specifics for each RadioCard to be rendered in the group."
9868
10704
  },
10705
+ "hintPosition": {
10706
+ "defaultValue": {
10707
+ "value": "'inline'",
10708
+ "computed": false
10709
+ },
10710
+ "type": {
10711
+ "name": "enum",
10712
+ "value": [
10713
+ {
10714
+ "value": "'inline'",
10715
+ "computed": false
10716
+ },
10717
+ {
10718
+ "value": "'below'",
10719
+ "computed": false
10720
+ }
10721
+ ]
10722
+ },
10723
+ "required": false,
10724
+ "description": "Position of the hint relative to label. Use `below` to display a larger hint below the label."
10725
+ },
9869
10726
  "tokens": {
9870
10727
  "type": {
9871
10728
  "name": "custom",
@@ -10635,6 +11492,27 @@
10635
11492
  },
10636
11493
  "required": false
10637
11494
  },
11495
+ "hintPosition": {
11496
+ "defaultValue": {
11497
+ "value": "'inline'",
11498
+ "computed": false
11499
+ },
11500
+ "type": {
11501
+ "name": "enum",
11502
+ "value": [
11503
+ {
11504
+ "value": "'inline'",
11505
+ "computed": false
11506
+ },
11507
+ {
11508
+ "value": "'below'",
11509
+ "computed": false
11510
+ }
11511
+ ]
11512
+ },
11513
+ "required": false,
11514
+ "description": "Position of the hint relative to label. Use `below` to display a larger hint below the label."
11515
+ },
10638
11516
  "accessibilityRole": {
10639
11517
  "defaultValue": {
10640
11518
  "value": "maxValues === 1\n? 'radiogroup' // radiogroup is cross-platform; only web aria has generic groups\n: Platform.select({ web: 'group', default: 'none' })",