jfs-components 0.1.8 → 0.1.12

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 (238) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/lib/commonjs/components/Accordion/Accordion.js +2 -1
  3. package/lib/commonjs/components/AccordionCheckbox/AccordionCheckbox.js +4 -3
  4. package/lib/commonjs/components/AccountCard/AccountCard.js +4 -3
  5. package/lib/commonjs/components/AllocationComparisonChart/AllocationComparisonChart.js +9 -6
  6. package/lib/commonjs/components/AreaLineChart/AreaLineChart.js +11 -7
  7. package/lib/commonjs/components/Badge/Badge.js +47 -8
  8. package/lib/commonjs/components/BrandChip/BrandChip.js +3 -3
  9. package/lib/commonjs/components/Button/Button.js +2 -1
  10. package/lib/commonjs/components/CardAdvisory/CardAdvisory.js +2 -1
  11. package/lib/commonjs/components/CardBankAccount/CardBankAccount.js +3 -2
  12. package/lib/commonjs/components/CardCTA/CardCTA.js +197 -27
  13. package/lib/commonjs/components/CardInsight/CardInsight.js +5 -1
  14. package/lib/commonjs/components/CircularProgressBar/CircularProgressBar.js +7 -3
  15. package/lib/commonjs/components/CircularProgressBarDoted/CircularProgressBarDoted.js +3 -2
  16. package/lib/commonjs/components/CircularRating/CircularRating.js +2 -1
  17. package/lib/commonjs/components/ClusterBubble/ClusterBubble.js +3 -2
  18. package/lib/commonjs/components/CompareTable/CompareTable.js +72 -43
  19. package/lib/commonjs/components/CoverageBarComparison/CoverageBarComparison.js +3 -2
  20. package/lib/commonjs/components/DonutChart/DonutChart.js +4 -3
  21. package/lib/commonjs/components/Dropdown/Dropdown.js +3 -2
  22. package/lib/commonjs/components/DropdownInput/DropdownInput.js +3 -2
  23. package/lib/commonjs/components/ExpandableCheckbox/ExpandableCheckbox.js +2 -1
  24. package/lib/commonjs/components/FormField/FormField.js +42 -2
  25. package/lib/commonjs/components/Gauge/Gauge.js +1 -1
  26. package/lib/commonjs/components/HoldingsCard/HoldingsCard.js +3 -2
  27. package/lib/commonjs/components/InstitutionBadge/InstitutionBadge.js +2 -1
  28. package/lib/commonjs/components/ListGroup/ListGroup.js +2 -1
  29. package/lib/commonjs/components/ListItem/ListItem.js +3 -2
  30. package/lib/commonjs/components/MediaCard/MediaCard.js +4 -2
  31. package/lib/commonjs/components/MetricLegendItem/MetricLegendItem.js +3 -2
  32. package/lib/commonjs/components/MonthlyStatusGrid/MonthlyStatusGrid.js +6 -3
  33. package/lib/commonjs/components/PoweredByLabel/PoweredByLabel.js +3 -2
  34. package/lib/commonjs/components/ProductMerchandisingCard/ProductMerchandisingCard.js +107 -33
  35. package/lib/commonjs/components/ProductOverview/ProductOverview.js +4 -3
  36. package/lib/commonjs/components/ProgressBadge/ProgressBadge.js +2 -2
  37. package/lib/commonjs/components/ProjectionMarker/ProjectionMarker.js +3 -2
  38. package/lib/commonjs/components/Section/Section.js +3 -2
  39. package/lib/commonjs/components/Slider/Slider.js +3 -2
  40. package/lib/commonjs/components/Stack/Stack.js +86 -0
  41. package/lib/commonjs/components/SuggestiveSearch/SuggestiveSearch.js +10 -1
  42. package/lib/commonjs/components/SummaryTile/SummaryTile.js +3 -2
  43. package/lib/commonjs/components/Table/Table.js +324 -0
  44. package/lib/commonjs/components/Text/Text.js +2 -1
  45. package/lib/commonjs/components/TextInput/TextInput.js +9 -1
  46. package/lib/commonjs/components/TextSegment/TextSegment.js +2 -1
  47. package/lib/commonjs/components/ThreadHero/ThreadHero.js +4 -5
  48. package/lib/commonjs/components/Title/Title.js +2 -1
  49. package/lib/commonjs/components/Toast/Toast.js +3 -2
  50. package/lib/commonjs/components/TransactionBubble/TransactionBubble.js +2 -1
  51. package/lib/commonjs/components/TransactionStatus/TransactionStatus.js +3 -2
  52. package/lib/commonjs/components/UpiHandle/UpiHandle.js +2 -2
  53. package/lib/commonjs/components/index.js +44 -0
  54. package/lib/commonjs/design-tokens/Coin Variables-variables-full.json +1 -1
  55. package/lib/commonjs/design-tokens/figma-modes.generated.js +1 -0
  56. package/lib/commonjs/icons/registry.js +1 -1
  57. package/lib/commonjs/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.js +11 -3
  58. package/lib/commonjs/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.js +8 -4
  59. package/lib/commonjs/utils/react-utils.js +56 -0
  60. package/lib/commonjs/utils/web-platform-utils.js +59 -0
  61. package/lib/module/components/Accordion/Accordion.js +3 -2
  62. package/lib/module/components/AccordionCheckbox/AccordionCheckbox.js +5 -4
  63. package/lib/module/components/AccountCard/AccountCard.js +5 -4
  64. package/lib/module/components/AllocationComparisonChart/AllocationComparisonChart.js +10 -7
  65. package/lib/module/components/AreaLineChart/AreaLineChart.js +12 -8
  66. package/lib/module/components/Badge/Badge.js +49 -10
  67. package/lib/module/components/BrandChip/BrandChip.js +4 -4
  68. package/lib/module/components/Button/Button.js +3 -2
  69. package/lib/module/components/CardAdvisory/CardAdvisory.js +3 -2
  70. package/lib/module/components/CardBankAccount/CardBankAccount.js +4 -3
  71. package/lib/module/components/CardCTA/CardCTA.js +198 -28
  72. package/lib/module/components/CardInsight/CardInsight.js +5 -1
  73. package/lib/module/components/CircularProgressBar/CircularProgressBar.js +8 -4
  74. package/lib/module/components/CircularProgressBarDoted/CircularProgressBarDoted.js +4 -3
  75. package/lib/module/components/CircularRating/CircularRating.js +3 -2
  76. package/lib/module/components/ClusterBubble/ClusterBubble.js +4 -3
  77. package/lib/module/components/CompareTable/CompareTable.js +73 -44
  78. package/lib/module/components/CoverageBarComparison/CoverageBarComparison.js +4 -3
  79. package/lib/module/components/DonutChart/DonutChart.js +5 -4
  80. package/lib/module/components/Dropdown/Dropdown.js +4 -3
  81. package/lib/module/components/DropdownInput/DropdownInput.js +4 -3
  82. package/lib/module/components/ExpandableCheckbox/ExpandableCheckbox.js +2 -1
  83. package/lib/module/components/FormField/FormField.js +45 -5
  84. package/lib/module/components/Gauge/Gauge.js +1 -1
  85. package/lib/module/components/HoldingsCard/HoldingsCard.js +4 -3
  86. package/lib/module/components/InstitutionBadge/InstitutionBadge.js +3 -2
  87. package/lib/module/components/ListGroup/ListGroup.js +3 -2
  88. package/lib/module/components/ListItem/ListItem.js +4 -3
  89. package/lib/module/components/MediaCard/MediaCard.js +4 -2
  90. package/lib/module/components/MetricLegendItem/MetricLegendItem.js +4 -3
  91. package/lib/module/components/MonthlyStatusGrid/MonthlyStatusGrid.js +7 -4
  92. package/lib/module/components/PoweredByLabel/PoweredByLabel.js +4 -3
  93. package/lib/module/components/ProductMerchandisingCard/ProductMerchandisingCard.js +109 -35
  94. package/lib/module/components/ProductOverview/ProductOverview.js +5 -4
  95. package/lib/module/components/ProgressBadge/ProgressBadge.js +3 -3
  96. package/lib/module/components/ProjectionMarker/ProjectionMarker.js +4 -3
  97. package/lib/module/components/Section/Section.js +4 -3
  98. package/lib/module/components/Slider/Slider.js +4 -3
  99. package/lib/module/components/Stack/Stack.js +81 -0
  100. package/lib/module/components/SuggestiveSearch/SuggestiveSearch.js +10 -1
  101. package/lib/module/components/SummaryTile/SummaryTile.js +4 -3
  102. package/lib/module/components/Table/Table.js +315 -0
  103. package/lib/module/components/Text/Text.js +3 -2
  104. package/lib/module/components/TextInput/TextInput.js +9 -1
  105. package/lib/module/components/TextSegment/TextSegment.js +3 -2
  106. package/lib/module/components/ThreadHero/ThreadHero.js +5 -6
  107. package/lib/module/components/Title/Title.js +3 -2
  108. package/lib/module/components/Toast/Toast.js +4 -3
  109. package/lib/module/components/TransactionBubble/TransactionBubble.js +3 -2
  110. package/lib/module/components/TransactionStatus/TransactionStatus.js +4 -3
  111. package/lib/module/components/UpiHandle/UpiHandle.js +3 -3
  112. package/lib/module/components/index.js +2 -0
  113. package/lib/module/design-tokens/Coin Variables-variables-full.json +1 -1
  114. package/lib/module/design-tokens/figma-modes.generated.js +1 -0
  115. package/lib/module/icons/registry.js +1 -1
  116. package/lib/module/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.js +11 -3
  117. package/lib/module/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.js +8 -4
  118. package/lib/module/utils/react-utils.js +54 -0
  119. package/lib/module/utils/web-platform-utils.js +58 -0
  120. package/lib/typescript/src/components/Accordion/Accordion.d.ts +7 -1
  121. package/lib/typescript/src/components/AccordionCheckbox/AccordionCheckbox.d.ts +7 -1
  122. package/lib/typescript/src/components/AccountCard/AccountCard.d.ts +7 -1
  123. package/lib/typescript/src/components/AllocationComparisonChart/AllocationComparisonChart.d.ts +7 -1
  124. package/lib/typescript/src/components/AreaLineChart/AreaLineChart.d.ts +8 -1
  125. package/lib/typescript/src/components/Badge/Badge.d.ts +32 -2
  126. package/lib/typescript/src/components/BrandChip/BrandChip.d.ts +7 -1
  127. package/lib/typescript/src/components/Button/Button.d.ts +7 -1
  128. package/lib/typescript/src/components/CardAdvisory/CardAdvisory.d.ts +7 -1
  129. package/lib/typescript/src/components/CardBankAccount/CardBankAccount.d.ts +7 -1
  130. package/lib/typescript/src/components/CardCTA/CardCTA.d.ts +27 -5
  131. package/lib/typescript/src/components/CircularProgressBar/CircularProgressBar.d.ts +7 -1
  132. package/lib/typescript/src/components/CircularProgressBarDoted/CircularProgressBarDoted.d.ts +7 -1
  133. package/lib/typescript/src/components/CircularRating/CircularRating.d.ts +7 -1
  134. package/lib/typescript/src/components/ClusterBubble/ClusterBubble.d.ts +7 -1
  135. package/lib/typescript/src/components/CompareTable/CompareTable.d.ts +7 -1
  136. package/lib/typescript/src/components/CoverageBarComparison/CoverageBarComparison.d.ts +7 -1
  137. package/lib/typescript/src/components/DonutChart/DonutChart.d.ts +7 -1
  138. package/lib/typescript/src/components/Dropdown/Dropdown.d.ts +7 -1
  139. package/lib/typescript/src/components/DropdownInput/DropdownInput.d.ts +6 -0
  140. package/lib/typescript/src/components/ExpandableCheckbox/ExpandableCheckbox.d.ts +7 -1
  141. package/lib/typescript/src/components/HoldingsCard/HoldingsCard.d.ts +7 -1
  142. package/lib/typescript/src/components/InstitutionBadge/InstitutionBadge.d.ts +7 -1
  143. package/lib/typescript/src/components/ListGroup/ListGroup.d.ts +7 -1
  144. package/lib/typescript/src/components/ListItem/ListItem.d.ts +7 -1
  145. package/lib/typescript/src/components/MetricLegendItem/MetricLegendItem.d.ts +7 -1
  146. package/lib/typescript/src/components/MonthlyStatusGrid/MonthlyStatusGrid.d.ts +14 -2
  147. package/lib/typescript/src/components/PoweredByLabel/PoweredByLabel.d.ts +7 -1
  148. package/lib/typescript/src/components/ProductMerchandisingCard/ProductMerchandisingCard.d.ts +7 -1
  149. package/lib/typescript/src/components/ProductOverview/ProductOverview.d.ts +7 -1
  150. package/lib/typescript/src/components/ProgressBadge/ProgressBadge.d.ts +7 -1
  151. package/lib/typescript/src/components/ProjectionMarker/ProjectionMarker.d.ts +7 -1
  152. package/lib/typescript/src/components/Section/Section.d.ts +7 -1
  153. package/lib/typescript/src/components/Slider/Slider.d.ts +6 -0
  154. package/lib/typescript/src/components/Stack/Stack.d.ts +81 -0
  155. package/lib/typescript/src/components/SummaryTile/SummaryTile.d.ts +7 -1
  156. package/lib/typescript/src/components/Table/Table.d.ts +139 -0
  157. package/lib/typescript/src/components/Text/Text.d.ts +7 -1
  158. package/lib/typescript/src/components/TextSegment/TextSegment.d.ts +7 -1
  159. package/lib/typescript/src/components/ThreadHero/ThreadHero.d.ts +7 -1
  160. package/lib/typescript/src/components/Title/Title.d.ts +7 -1
  161. package/lib/typescript/src/components/Toast/Toast.d.ts +7 -1
  162. package/lib/typescript/src/components/TransactionBubble/TransactionBubble.d.ts +7 -1
  163. package/lib/typescript/src/components/TransactionStatus/TransactionStatus.d.ts +7 -1
  164. package/lib/typescript/src/components/UpiHandle/UpiHandle.d.ts +7 -1
  165. package/lib/typescript/src/components/index.d.ts +4 -2
  166. package/lib/typescript/src/icons/registry.d.ts +1 -1
  167. package/lib/typescript/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.d.ts +31 -3
  168. package/lib/typescript/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.d.ts +18 -2
  169. package/lib/typescript/src/utils/react-utils.d.ts +37 -0
  170. package/lib/typescript/src/utils/web-platform-utils.d.ts +36 -0
  171. package/package.json +1 -1
  172. package/src/components/Accordion/Accordion.tsx +9 -2
  173. package/src/components/AccordionCheckbox/AccordionCheckbox.tsx +10 -3
  174. package/src/components/AccountCard/AccountCard.tsx +10 -3
  175. package/src/components/AllocationComparisonChart/AllocationComparisonChart.tsx +14 -4
  176. package/src/components/AreaLineChart/AreaLineChart.tsx +15 -5
  177. package/src/components/Badge/Badge.tsx +78 -8
  178. package/src/components/BrandChip/BrandChip.tsx +9 -3
  179. package/src/components/Button/Button.tsx +9 -2
  180. package/src/components/CardAdvisory/CardAdvisory.tsx +9 -2
  181. package/src/components/CardBankAccount/CardBankAccount.tsx +9 -2
  182. package/src/components/CardCTA/CardCTA.tsx +214 -41
  183. package/src/components/CardInsight/CardInsight.tsx +7 -1
  184. package/src/components/CircularProgressBar/CircularProgressBar.tsx +14 -4
  185. package/src/components/CircularProgressBarDoted/CircularProgressBarDoted.tsx +10 -3
  186. package/src/components/CircularRating/CircularRating.tsx +9 -2
  187. package/src/components/ClusterBubble/ClusterBubble.tsx +9 -2
  188. package/src/components/CompareTable/CompareTable.tsx +98 -50
  189. package/src/components/CoverageBarComparison/CoverageBarComparison.tsx +9 -2
  190. package/src/components/DonutChart/DonutChart.tsx +10 -3
  191. package/src/components/Dropdown/Dropdown.tsx +9 -2
  192. package/src/components/DropdownInput/DropdownInput.tsx +9 -2
  193. package/src/components/ExpandableCheckbox/ExpandableCheckbox.tsx +8 -1
  194. package/src/components/FormField/FormField.tsx +49 -4
  195. package/src/components/Gauge/Gauge.tsx +1 -1
  196. package/src/components/HoldingsCard/HoldingsCard.tsx +9 -2
  197. package/src/components/InstitutionBadge/InstitutionBadge.tsx +9 -2
  198. package/src/components/ListGroup/ListGroup.tsx +9 -2
  199. package/src/components/ListItem/ListItem.tsx +10 -3
  200. package/src/components/MediaCard/MediaCard.tsx +2 -2
  201. package/src/components/MetricLegendItem/MetricLegendItem.tsx +9 -2
  202. package/src/components/MonthlyStatusGrid/MonthlyStatusGrid.tsx +17 -2
  203. package/src/components/PoweredByLabel/PoweredByLabel.tsx +9 -2
  204. package/src/components/ProductMerchandisingCard/ProductMerchandisingCard.tsx +104 -37
  205. package/src/components/ProductOverview/ProductOverview.tsx +10 -3
  206. package/src/components/ProgressBadge/ProgressBadge.tsx +9 -3
  207. package/src/components/ProjectionMarker/ProjectionMarker.tsx +9 -2
  208. package/src/components/Section/Section.tsx +10 -3
  209. package/src/components/Slider/Slider.tsx +9 -2
  210. package/src/components/Stack/Stack.tsx +131 -0
  211. package/src/components/SuggestiveSearch/SuggestiveSearch.tsx +10 -1
  212. package/src/components/SummaryTile/SummaryTile.tsx +9 -2
  213. package/src/components/Table/Table.tsx +449 -0
  214. package/src/components/Text/Text.tsx +9 -2
  215. package/src/components/TextInput/TextInput.tsx +7 -1
  216. package/src/components/TextSegment/TextSegment.tsx +9 -2
  217. package/src/components/ThreadHero/ThreadHero.tsx +10 -3
  218. package/src/components/Title/Title.tsx +9 -2
  219. package/src/components/Toast/Toast.tsx +9 -2
  220. package/src/components/TransactionBubble/TransactionBubble.tsx +9 -2
  221. package/src/components/TransactionStatus/TransactionStatus.tsx +9 -2
  222. package/src/components/UpiHandle/UpiHandle.tsx +9 -3
  223. package/src/components/index.ts +23 -2
  224. package/src/design-tokens/Coin Variables-variables-full.json +1 -1
  225. package/src/design-tokens/figma-modes.generated.ts +1 -0
  226. package/src/icons/registry.ts +1 -1
  227. package/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.tsx +32 -3
  228. package/src/{components/ProductMerchandisingCard → utils/GlassFill}/GlassFill.web.tsx +25 -4
  229. package/src/utils/react-utils.ts +61 -0
  230. package/src/utils/web-platform-utils.ts +68 -0
  231. package/lib/commonjs/components/MediaCard/GlassFill.js +0 -62
  232. package/lib/commonjs/components/MediaCard/GlassFill.web.js +0 -48
  233. package/lib/module/components/MediaCard/GlassFill.js +0 -57
  234. package/lib/module/components/MediaCard/GlassFill.web.js +0 -43
  235. package/lib/typescript/src/components/MediaCard/GlassFill.d.ts +0 -47
  236. package/lib/typescript/src/components/MediaCard/GlassFill.web.d.ts +0 -20
  237. package/src/components/MediaCard/GlassFill.tsx +0 -89
  238. package/src/components/MediaCard/GlassFill.web.tsx +0 -53
@@ -83,6 +83,12 @@ export type CoverageBarComparisonProps = {
83
83
  labelStyle?: StyleProp<TextStyle>;
84
84
  /** Accessibility label for the entire component. */
85
85
  accessibilityLabel?: string;
86
+ /**
87
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
88
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
89
+ * lines as it needs even when horizontal space is tight.
90
+ */
91
+ disableTruncation?: boolean;
86
92
  };
87
93
  /**
88
94
  * `CoverageBarComparison` renders a small vertical-bar chart that compares
@@ -101,6 +107,6 @@ export type CoverageBarComparisonProps = {
101
107
  *
102
108
  * @component
103
109
  */
104
- declare function CoverageBarComparison({ bars, max, height, legendGap, modes: propModes, style, chartStyle, legendStyle, labelStyle, accessibilityLabel, }: CoverageBarComparisonProps): import("react/jsx-runtime").JSX.Element;
110
+ declare function CoverageBarComparison({ bars, max, height, legendGap, modes: propModes, style, chartStyle, legendStyle, labelStyle, accessibilityLabel, disableTruncation, }: CoverageBarComparisonProps): import("react/jsx-runtime").JSX.Element;
105
111
  export default CoverageBarComparison;
106
112
  //# sourceMappingURL=CoverageBarComparison.d.ts.map
@@ -70,6 +70,12 @@ export type DonutChartProps = {
70
70
  labelStyle?: StyleProp<TextStyle>;
71
71
  /** Accessibility label announced for the whole donut chart. */
72
72
  accessibilityLabel?: string;
73
+ /**
74
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
75
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
76
+ * lines as it needs even when horizontal space is tight.
77
+ */
78
+ disableTruncation?: boolean;
73
79
  };
74
80
  type DonutChartSegmentProps = {
75
81
  /** Angular weight relative to the sum of sibling segment values. */
@@ -108,7 +114,7 @@ declare function DonutChartSegment(_: DonutChartSegmentProps): any;
108
114
  * @component
109
115
  * @param {DonutChartProps} props
110
116
  */
111
- declare function DonutChart({ segments, value, label, children, size, strokeWidth: strokeWidthProp, gap, modes: propModes, style, valueStyle, labelStyle, accessibilityLabel, }: DonutChartProps): import("react/jsx-runtime").JSX.Element;
117
+ declare function DonutChart({ segments, value, label, children, size, strokeWidth: strokeWidthProp, gap, modes: propModes, style, valueStyle, labelStyle, accessibilityLabel, disableTruncation, }: DonutChartProps): import("react/jsx-runtime").JSX.Element;
112
118
  declare namespace DonutChart {
113
119
  var Segment: typeof DonutChartSegment;
114
120
  }
@@ -35,8 +35,14 @@ export type DropdownItemProps = {
35
35
  accessibilityLabel?: string;
36
36
  /** Accessibility hint. */
37
37
  accessibilityHint?: string;
38
+ /**
39
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
40
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
41
+ * lines as it needs even when horizontal space is tight.
42
+ */
43
+ disableTruncation?: boolean;
38
44
  };
39
- export declare function DropdownItem({ label, value, selected, disabled, leading, trailing, onPress, children, modes: propModes, style, labelStyle, accessibilityLabel, accessibilityHint, }: DropdownItemProps): import("react/jsx-runtime").JSX.Element;
45
+ export declare function DropdownItem({ label, value, selected, disabled, leading, trailing, onPress, children, modes: propModes, style, labelStyle, accessibilityLabel, accessibilityHint, disableTruncation, }: DropdownItemProps): import("react/jsx-runtime").JSX.Element;
40
46
  export type DropdownProps = {
41
47
  /** Dropdown items, typically `<DropdownItem />` children. */
42
48
  children?: React.ReactNode;
@@ -122,6 +122,12 @@ export type DropdownInputProps = {
122
122
  onFocus?: (e: any) => void;
123
123
  /** Called when the trigger loses focus (web only). */
124
124
  onBlur?: (e: any) => void;
125
+ /**
126
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
127
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
128
+ * lines as it needs even when horizontal space is tight.
129
+ */
130
+ disableTruncation?: boolean;
125
131
  };
126
132
  declare const DropdownInput: React.ForwardRefExoticComponent<DropdownInputProps & React.RefAttributes<DropdownInputHandle>>;
127
133
  export default DropdownInput;
@@ -23,6 +23,12 @@ export type ExpandableCheckboxProps = {
23
23
  readLessLabel?: string;
24
24
  /** Number of lines to show when collapsed. Defaults to `1`. */
25
25
  collapsedLines?: number;
26
+ /**
27
+ * When `true`, disables truncation of the collapsed label: the trailing
28
+ * ellipsis (`…`) is never shown and the `collapsedLines` clamp is ignored, so
29
+ * the label wraps fully even when horizontal space is tight.
30
+ */
31
+ disableTruncation?: boolean;
26
32
  /** Design token modes for theming (e.g. `{ 'Color Mode': 'Light' }`). */
27
33
  modes?: Modes;
28
34
  /** Override outer container styles. */
@@ -59,6 +65,6 @@ export type ExpandableCheckboxProps = {
59
65
  * />
60
66
  * ```
61
67
  */
62
- declare function ExpandableCheckbox({ label, checked: controlledChecked, defaultChecked, onValueChange, expanded: controlledExpanded, defaultExpanded, onExpandedChange, disabled, readMoreLabel, readLessLabel, collapsedLines, modes, style, labelStyle, accessibilityLabel, }: ExpandableCheckboxProps): import("react/jsx-runtime").JSX.Element;
68
+ declare function ExpandableCheckbox({ label, checked: controlledChecked, defaultChecked, onValueChange, expanded: controlledExpanded, defaultExpanded, onExpandedChange, disabled, readMoreLabel, readLessLabel, collapsedLines, disableTruncation, modes, style, labelStyle, accessibilityLabel, }: ExpandableCheckboxProps): import("react/jsx-runtime").JSX.Element;
63
69
  export default ExpandableCheckbox;
64
70
  //# sourceMappingURL=ExpandableCheckbox.d.ts.map
@@ -25,6 +25,12 @@ export interface HoldingsCardProps {
25
25
  style?: StyleProp<ViewStyle>;
26
26
  /** Test ID for testing. */
27
27
  testID?: string;
28
+ /**
29
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
30
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
31
+ * lines as it needs even when horizontal space is tight.
32
+ */
33
+ disableTruncation?: boolean;
28
34
  }
29
- export default function HoldingsCard({ headerImage, heroLabel, heroValue, details, selected, disabled, onPress, modes, style, testID, }: HoldingsCardProps): import("react/jsx-runtime").JSX.Element;
35
+ export default function HoldingsCard({ headerImage, heroLabel, heroValue, details, selected, disabled, onPress, modes, style, testID, disableTruncation, }: HoldingsCardProps): import("react/jsx-runtime").JSX.Element;
30
36
  //# sourceMappingURL=HoldingsCard.d.ts.map
@@ -24,8 +24,14 @@ export type InstitutionBadgeProps = InstitutionBadgeBaseProps & {
24
24
  labelStyle?: StyleProp<TextStyle>;
25
25
  /** Accessibility label. Defaults to `label`. */
26
26
  accessibilityLabel?: string;
27
+ /**
28
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
29
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
30
+ * lines as it needs even when horizontal space is tight.
31
+ */
32
+ disableTruncation?: boolean;
27
33
  };
28
- declare function InstitutionBadge({ label, source, avatarSlot, modes: propModes, style, labelStyle, accessibilityLabel, ...rest }: InstitutionBadgeProps): import("react/jsx-runtime").JSX.Element;
34
+ declare function InstitutionBadge({ label, source, avatarSlot, modes: propModes, style, labelStyle, accessibilityLabel, disableTruncation, ...rest }: InstitutionBadgeProps): import("react/jsx-runtime").JSX.Element;
29
35
  declare const _default: React.MemoExoticComponent<typeof InstitutionBadge>;
30
36
  export default _default;
31
37
  //# sourceMappingURL=InstitutionBadge.d.ts.map
@@ -9,6 +9,12 @@ type ListGroupProps = {
9
9
  style?: StyleProp<ViewStyle>;
10
10
  accessibilityLabel?: string;
11
11
  accessibilityHint?: string;
12
+ /**
13
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
14
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
15
+ * lines as it needs even when horizontal space is tight.
16
+ */
17
+ disableTruncation?: boolean;
12
18
  } & Omit<React.ComponentProps<typeof View>, 'children'>;
13
19
  /**
14
20
  * ListGroup component that mirrors the Figma "List Group" component.
@@ -35,6 +41,6 @@ type ListGroupProps = {
35
41
  * @param {string} [props.accessibilityLabel] - Accessibility label for the list group. If not provided, uses label
36
42
  * @param {string} [props.accessibilityHint] - Additional accessibility hint for screen readers
37
43
  */
38
- declare function ListGroup({ label, listGroupSlot, children, modes, style, accessibilityLabel, accessibilityHint, ...rest }: ListGroupProps): import("react/jsx-runtime").JSX.Element;
44
+ declare function ListGroup({ label, listGroupSlot, children, modes, style, accessibilityLabel, accessibilityHint, disableTruncation, ...rest }: ListGroupProps): import("react/jsx-runtime").JSX.Element;
39
45
  export default ListGroup;
40
46
  //# sourceMappingURL=ListGroup.d.ts.map
@@ -31,6 +31,12 @@ type ListItemProps = {
31
31
  * Web-specific accessibility props (only used on web platform)
32
32
  */
33
33
  webAccessibilityProps?: WebAccessibilityProps;
34
+ /**
35
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
36
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
37
+ * lines as it needs even when horizontal space is tight.
38
+ */
39
+ disableTruncation?: boolean;
34
40
  } & React.ComponentProps<typeof View>;
35
41
  /**
36
42
  * ListItem component that mirrors the Figma "List Item" component.
@@ -78,7 +84,7 @@ type ListItemProps = {
78
84
  * handlers stay referentially stable across renders.
79
85
  * - The component is wrapped in `React.memo`.
80
86
  */
81
- declare function ListItemImpl({ layout, title, supportText, showSupportText, leading, supportSlot, trailing, endSlot, navArrow, modes, onPress, style, contentStyle, accessibilityLabel, accessibilityHint, accessibilityState, webAccessibilityProps, ...rest }: ListItemProps): import("react/jsx-runtime").JSX.Element;
87
+ declare function ListItemImpl({ layout, title, supportText, showSupportText, leading, supportSlot, trailing, endSlot, navArrow, modes, onPress, style, contentStyle, accessibilityLabel, accessibilityHint, accessibilityState, webAccessibilityProps, disableTruncation, ...rest }: ListItemProps): import("react/jsx-runtime").JSX.Element;
82
88
  declare const ListItem: React.MemoExoticComponent<typeof ListItemImpl>;
83
89
  export default ListItem;
84
90
  //# sourceMappingURL=ListItem.d.ts.map
@@ -30,6 +30,12 @@ export type MetricLegendItemProps = {
30
30
  labelStyle?: StyleProp<TextStyle>;
31
31
  /** Override the value text styles. */
32
32
  valueStyle?: StyleProp<TextStyle>;
33
+ /**
34
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
35
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
36
+ * lines as it needs even when horizontal space is tight.
37
+ */
38
+ disableTruncation?: boolean;
33
39
  };
34
40
  /**
35
41
  * MetricLegendItem renders a horizontal row consisting of a small colored
@@ -39,6 +45,6 @@ export type MetricLegendItemProps = {
39
45
  * @component
40
46
  * @param {MetricLegendItemProps} props
41
47
  */
42
- declare function MetricLegendItem({ label, value, indicatorColor, indicatorShape, modes, style, indicatorStyle, labelStyle, valueStyle, }: MetricLegendItemProps): import("react/jsx-runtime").JSX.Element;
48
+ declare function MetricLegendItem({ label, value, indicatorColor, indicatorShape, modes, style, indicatorStyle, labelStyle, valueStyle, disableTruncation, }: MetricLegendItemProps): import("react/jsx-runtime").JSX.Element;
43
49
  export default MetricLegendItem;
44
50
  //# sourceMappingURL=MetricLegendItem.d.ts.map
@@ -70,6 +70,12 @@ export type MonthlyStatusGridProps = {
70
70
  legendStyle?: StyleProp<ViewStyle>;
71
71
  /** Accessibility label for the entire component. */
72
72
  accessibilityLabel?: string;
73
+ /**
74
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
75
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
76
+ * lines as it needs even when horizontal space is tight.
77
+ */
78
+ disableTruncation?: boolean;
73
79
  };
74
80
  export type CalendarGlyphProps = {
75
81
  /** Text rendered inside the glyph (e.g. `'Jan'`). */
@@ -87,6 +93,12 @@ export type CalendarGlyphProps = {
87
93
  labelStyle?: StyleProp<TextStyle>;
88
94
  /** Accessibility label. Defaults to `"{label}, {status}"`. */
89
95
  accessibilityLabel?: string;
96
+ /**
97
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
98
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
99
+ * lines as it needs even when horizontal space is tight.
100
+ */
101
+ disableTruncation?: boolean;
90
102
  };
91
103
  /**
92
104
  * Single calendar-month glyph: a small pill with a status-driven background
@@ -95,7 +107,7 @@ export type CalendarGlyphProps = {
95
107
  * {@link MonthlyStatusGrid} instead, which keeps the count, layout and
96
108
  * legend in sync automatically.
97
109
  */
98
- declare function CalendarGlyph({ label, status, modes: propModes, style, labelStyle, accessibilityLabel, }: CalendarGlyphProps): import("react/jsx-runtime").JSX.Element;
110
+ declare function CalendarGlyph({ label, status, modes: propModes, style, labelStyle, accessibilityLabel, disableTruncation, }: CalendarGlyphProps): import("react/jsx-runtime").JSX.Element;
99
111
  /**
100
112
  * `MonthlyStatusGrid` shows a year (or any contiguous range of months) as a
101
113
  * grid of small pill-shaped calendar glyphs, each colored by its semantic
@@ -114,7 +126,7 @@ declare function CalendarGlyph({ label, status, modes: propModes, style, labelSt
114
126
  *
115
127
  * @component
116
128
  */
117
- declare function MonthlyStatusGrid({ months, columns, legend, legendStatuses, modes: propModes, style, monthsStyle, rowStyle, glyphStyle, labelStyle, legendStyle, accessibilityLabel, }: MonthlyStatusGridProps): import("react/jsx-runtime").JSX.Element;
129
+ declare function MonthlyStatusGrid({ months, columns, legend, legendStatuses, modes: propModes, style, monthsStyle, rowStyle, glyphStyle, labelStyle, legendStyle, accessibilityLabel, disableTruncation, }: MonthlyStatusGridProps): import("react/jsx-runtime").JSX.Element;
118
130
  export { CalendarGlyph };
119
131
  export default MonthlyStatusGrid;
120
132
  //# sourceMappingURL=MonthlyStatusGrid.d.ts.map
@@ -46,6 +46,12 @@ export type PoweredByLabelProps = {
46
46
  * (which is decorative) does not need to be announced separately.
47
47
  */
48
48
  accessibilityLabel?: string;
49
+ /**
50
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
51
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
52
+ * lines as it needs even when horizontal space is tight.
53
+ */
54
+ disableTruncation?: boolean;
49
55
  };
50
56
  /**
51
57
  * `PoweredByLabel` renders the small "Powered by RBI-regulated account
@@ -66,6 +72,6 @@ export type PoweredByLabelProps = {
66
72
  * @component
67
73
  * @param {PoweredByLabelProps} props
68
74
  */
69
- declare function PoweredByLabel({ label, imageSource, imageWidth, imageHeight, imageSlot, modes: propModes, style, textStyle, imageStyle, accessibilityLabel, }: PoweredByLabelProps): import("react/jsx-runtime").JSX.Element;
75
+ declare function PoweredByLabel({ label, imageSource, imageWidth, imageHeight, imageSlot, modes: propModes, style, textStyle, imageStyle, accessibilityLabel, disableTruncation, }: PoweredByLabelProps): import("react/jsx-runtime").JSX.Element;
70
76
  export default PoweredByLabel;
71
77
  //# sourceMappingURL=PoweredByLabel.d.ts.map
@@ -55,6 +55,12 @@ export interface ProductMerchandisingCardProps {
55
55
  style?: StyleProp<ViewStyle>;
56
56
  /** Accessibility label for the card. */
57
57
  accessibilityLabel?: string;
58
+ /**
59
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
60
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
61
+ * lines as it needs even when horizontal space is tight.
62
+ */
63
+ disableTruncation?: boolean;
58
64
  }
59
65
  /**
60
66
  * ProductMerchandisingCard — a full-bleed image card (Figma node 5277:317)
@@ -76,6 +82,6 @@ export interface ProductMerchandisingCardProps {
76
82
  * The blur strength is driven by the Figma `blur/minimal` token, mapped to the
77
83
  * `GlassFill` 0–100 intensity scale the same way `MediaCard` does.
78
84
  */
79
- declare function ProductMerchandisingCard({ imageSource, title, subtitle, badgeLabel, badge, showAvatar, avatarSource, avatarMonogram, avatar, specialBadgeLabel, specialBadgeIcon, specialBadge, ctaLabel, onCtaPress, cta, onPress, height, modes, style, accessibilityLabel, }: ProductMerchandisingCardProps): import("react/jsx-runtime").JSX.Element;
85
+ declare function ProductMerchandisingCard({ imageSource, title, subtitle, badgeLabel, badge, showAvatar, avatarSource, avatarMonogram, avatar, specialBadgeLabel, specialBadgeIcon, specialBadge, ctaLabel, onCtaPress, cta, onPress, height, modes, style, accessibilityLabel, disableTruncation, }: ProductMerchandisingCardProps): import("react/jsx-runtime").JSX.Element;
80
86
  export default ProductMerchandisingCard;
81
87
  //# sourceMappingURL=ProductMerchandisingCard.d.ts.map
@@ -34,7 +34,13 @@ export type ProductOverviewProps = {
34
34
  * for badges, callouts, etc. Receives the same `modes` as the parent.
35
35
  */
36
36
  children?: React.ReactNode;
37
+ /**
38
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
39
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
40
+ * lines as it needs even when horizontal space is tight.
41
+ */
42
+ disableTruncation?: boolean;
37
43
  };
38
- declare const ProductOverview: ({ imageSource, imageRatio, labelImageSource, label, productName, description, stats, modes, style, children, }: ProductOverviewProps) => import("react/jsx-runtime").JSX.Element;
44
+ declare const ProductOverview: ({ imageSource, imageRatio, labelImageSource, label, productName, description, stats, modes, style, children, disableTruncation, }: ProductOverviewProps) => import("react/jsx-runtime").JSX.Element;
39
45
  export default ProductOverview;
40
46
  //# sourceMappingURL=ProductOverview.d.ts.map
@@ -16,6 +16,12 @@ export type ProgressBadgeProps = {
16
16
  textStyle?: StyleProp<TextStyle>;
17
17
  /** Accessibility label for screen readers */
18
18
  accessibilityLabel?: string;
19
+ /**
20
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
21
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
22
+ * lines as it needs even when horizontal space is tight.
23
+ */
24
+ disableTruncation?: boolean;
19
25
  } & React.ComponentProps<typeof View>;
20
26
  /**
21
27
  * ProgressBadge component that displays an icon, text, and an internal progress bar.
@@ -32,6 +38,6 @@ export type ProgressBadgeProps = {
32
38
  * @param {Object} [props.textStyle] - Optional text style overrides.
33
39
  * @param {string} [props.accessibilityLabel] - Accessibility label.
34
40
  */
35
- declare function ProgressBadge({ taskName, iconName, value, modes, style, textStyle: textStyleOverride, accessibilityLabel, ...rest }: ProgressBadgeProps): import("react/jsx-runtime").JSX.Element;
41
+ declare function ProgressBadge({ taskName, iconName, value, modes, style, textStyle: textStyleOverride, accessibilityLabel, disableTruncation, ...rest }: ProgressBadgeProps): import("react/jsx-runtime").JSX.Element;
36
42
  export default ProgressBadge;
37
43
  //# sourceMappingURL=ProgressBadge.d.ts.map
@@ -50,6 +50,12 @@ export type ProjectionMarkerProps = {
50
50
  rateStyle?: StyleProp<TextStyle>;
51
51
  /** Accessibility label for the whole marker. */
52
52
  accessibilityLabel?: string;
53
+ /**
54
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
55
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
56
+ * lines as it needs even when horizontal space is tight.
57
+ */
58
+ disableTruncation?: boolean;
53
59
  };
54
60
  /**
55
61
  * ProjectionMarker renders a start value and an end value connected to a
@@ -77,6 +83,6 @@ export type ProjectionMarkerProps = {
77
83
  * />
78
84
  * ```
79
85
  */
80
- declare function ProjectionMarker({ startValue, endValue, duration, rate, showConnectors, modes, style, startValueStyle, endValueStyle, badgeStyle, durationStyle, rateStyle, accessibilityLabel, }: ProjectionMarkerProps): import("react/jsx-runtime").JSX.Element;
86
+ declare function ProjectionMarker({ startValue, endValue, duration, rate, showConnectors, modes, style, startValueStyle, endValueStyle, badgeStyle, durationStyle, rateStyle, accessibilityLabel, disableTruncation, }: ProjectionMarkerProps): import("react/jsx-runtime").JSX.Element;
81
87
  export default ProjectionMarker;
82
88
  //# sourceMappingURL=ProjectionMarker.d.ts.map
@@ -18,8 +18,14 @@ type SectionProps = {
18
18
  * Web-specific accessibility props (only used on web platform)
19
19
  */
20
20
  webAccessibilityProps?: WebAccessibilityProps;
21
+ /**
22
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
23
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
24
+ * lines as it needs even when horizontal space is tight.
25
+ */
26
+ disableTruncation?: boolean;
21
27
  } & React.ComponentProps<typeof View>;
22
- declare function Section({ title, supportText, showSupportText, slot, slotDirection, modes, onPress, style, accessibilityLabel: _accessibilityLabel, accessibilityHint, webAccessibilityProps, ...rest }: SectionProps): import("react/jsx-runtime").JSX.Element;
28
+ declare function Section({ title, supportText, showSupportText, slot, slotDirection, modes, onPress, style, accessibilityLabel: _accessibilityLabel, accessibilityHint, webAccessibilityProps, disableTruncation, ...rest }: SectionProps): import("react/jsx-runtime").JSX.Element;
23
29
  declare namespace Section {
24
30
  var Bento: typeof SectionBento;
25
31
  }
@@ -78,6 +78,12 @@ export interface SliderProps {
78
78
  style?: StyleProp<ViewStyle>;
79
79
  /** Accessibility label for screen readers. */
80
80
  accessibilityLabel?: string;
81
+ /**
82
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
83
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
84
+ * lines as it needs even when horizontal space is tight.
85
+ */
86
+ disableTruncation?: boolean;
81
87
  }
82
88
  /**
83
89
  * Slider — Figma node 5373:446 ("Slider").
@@ -0,0 +1,81 @@
1
+ import React from 'react';
2
+ import { type StyleProp, type ViewProps, type ViewStyle } from 'react-native';
3
+ import type { Modes } from '../../design-tokens';
4
+ export type StackLayoutDirection = 'vertical' | 'horizontal';
5
+ export type StackProps = ViewProps & {
6
+ /**
7
+ * Content laid out inside the stack. `modes` are cascaded to every child via
8
+ * {@link cloneChildrenWithModes}.
9
+ */
10
+ children?: React.ReactNode;
11
+ /**
12
+ * Main-axis direction for stack children. Matches the Figma Slot variant:
13
+ * - `vertical` (default): stacks children in a column
14
+ * - `horizontal`: arranges children in a row
15
+ */
16
+ layoutDirection?: StackLayoutDirection;
17
+ /**
18
+ * Alignment along the cross axis.
19
+ * Defaults to `stretch` for vertical and `flex-start` for horizontal.
20
+ */
21
+ alignCrossAxis?: ViewStyle['alignItems'];
22
+ /**
23
+ * Distribution along the main axis (maps to `justifyContent`).
24
+ */
25
+ justifyMainAxis?: ViewStyle['justifyContent'];
26
+ /**
27
+ * Only meaningful when `layoutDirection` is `horizontal`.
28
+ *
29
+ * When true, forces every child to share the height of the tallest child. The
30
+ * height is enforced by the stack itself (`alignItems: 'stretch'` plus an
31
+ * injected `alignSelf: 'stretch'` on each child), so children can no longer
32
+ * opt out via their own `alignSelf`. Children with an explicit `height` keep
33
+ * that height, since a fixed cross-axis dimension defeats stretch in Yoga.
34
+ *
35
+ * Overrides `alignCrossAxis` when it applies.
36
+ */
37
+ equalHeight?: boolean;
38
+ /**
39
+ * Only meaningful when `layoutDirection` is `vertical`.
40
+ *
41
+ * When true, forces every child to fill the full width of the stack. The width
42
+ * is enforced by the stack itself (`alignItems: 'stretch'` plus an injected
43
+ * `alignSelf: 'stretch'` on each child), so children can no longer opt out via
44
+ * their own `alignSelf`. Children with an explicit `width` keep that width,
45
+ * since a fixed cross-axis dimension defeats stretch in Yoga.
46
+ *
47
+ * Overrides `alignCrossAxis` when it applies.
48
+ */
49
+ fillWidth?: boolean;
50
+ /**
51
+ * Mode configuration passed to the token resolver and cascaded to children.
52
+ */
53
+ modes?: Modes;
54
+ style?: StyleProp<ViewStyle>;
55
+ };
56
+ /**
57
+ * Stack — a token-driven layout container for grouped content.
58
+ *
59
+ * Use `Stack` instead of a raw `View` when you need a vertical or horizontal
60
+ * stack with design-token gap spacing and automatic `modes` propagation to
61
+ * children. Typical usage is nesting a column of actions inside a
62
+ * direction-locked parent such as `ActionFooter`:
63
+ *
64
+ * @example
65
+ * ```tsx
66
+ * <ActionFooter modes={modes}>
67
+ * <Stack layoutDirection="vertical" modes={modes}>
68
+ * <Button label="Continue" modes={primaryModes} />
69
+ * <Disclaimer disclaimer="Terms apply." modes={modes} />
70
+ * </Stack>
71
+ * </ActionFooter>
72
+ * ```
73
+ *
74
+ * @remarks
75
+ * Previously named `Slot`. The `Slot` export is preserved as a deprecated alias
76
+ * for backward compatibility.
77
+ */
78
+ declare function Stack({ children, layoutDirection, alignCrossAxis, justifyMainAxis, equalHeight, fillWidth, modes: propModes, style, ...rest }: StackProps): import("react/jsx-runtime").JSX.Element;
79
+ declare const _default: React.MemoExoticComponent<typeof Stack>;
80
+ export default _default;
81
+ //# sourceMappingURL=Stack.d.ts.map
@@ -45,6 +45,12 @@ export type SummaryTileProps = {
45
45
  descriptionStyle?: StyleProp<TextStyle>;
46
46
  /** Accessibility label override (defaults to `title`). */
47
47
  accessibilityLabel?: string;
48
+ /**
49
+ * When `true`, disables text truncation: the trailing ellipsis (`…`) is never
50
+ * shown and any `numberOfLines` clamp is ignored, so the text wraps to as many
51
+ * lines as it needs even when horizontal space is tight.
52
+ */
53
+ disableTruncation?: boolean;
48
54
  };
49
55
  /**
50
56
  * SummaryTile composes a title (with an inline `StrengthIndicator`), a
@@ -56,6 +62,6 @@ export type SummaryTileProps = {
56
62
  * @component
57
63
  * @param {SummaryTileProps} props
58
64
  */
59
- declare function SummaryTile({ title, description, confidence, chevron, children, onPress, modes, style, titleStyle, descriptionStyle, accessibilityLabel, }: SummaryTileProps): import("react/jsx-runtime").JSX.Element;
65
+ declare function SummaryTile({ title, description, confidence, chevron, children, onPress, modes, style, titleStyle, descriptionStyle, accessibilityLabel, disableTruncation, }: SummaryTileProps): import("react/jsx-runtime").JSX.Element;
60
66
  export default SummaryTile;
61
67
  //# sourceMappingURL=SummaryTile.d.ts.map
@@ -0,0 +1,139 @@
1
+ import React from 'react';
2
+ import { type StyleProp, type ViewStyle } from 'react-native';
3
+ import type { Modes } from '../../design-tokens';
4
+ export type TableCellAlign = 'left' | 'center' | 'right';
5
+ export type TableCellProps = {
6
+ children?: React.ReactNode;
7
+ /** Horizontal alignment of the cell content. @default 'left' */
8
+ align?: TableCellAlign;
9
+ /** Fixed cell width. Omit to let the cell flex. */
10
+ width?: number;
11
+ /** Flex-grow weight when `width` is not set. @default 1 */
12
+ flex?: number;
13
+ /** Drop the right divider (used for the last column). @default false */
14
+ isLastColumn?: boolean;
15
+ /** Drop the bottom divider (used for the last row). @default false */
16
+ isLastRow?: boolean;
17
+ modes?: Modes;
18
+ style?: StyleProp<ViewStyle>;
19
+ };
20
+ /**
21
+ * A single body cell. White background with a bottom + right divider, matching
22
+ * the Figma `table-cell` sub-component. String/number children are rendered
23
+ * with the token label style; any element is rendered as-is.
24
+ */
25
+ declare function TableCell({ children, align, width, flex, isLastColumn, isLastRow, modes, style, }: TableCellProps): import("react/jsx-runtime").JSX.Element;
26
+ export type TableHeaderCellProps = {
27
+ children?: React.ReactNode;
28
+ /** Horizontal alignment of the header content. @default 'left' */
29
+ align?: TableCellAlign;
30
+ /** Fixed cell width. Omit to let the cell flex. */
31
+ width?: number;
32
+ /** Flex-grow weight when `width` is not set. @default 1 */
33
+ flex?: number;
34
+ modes?: Modes;
35
+ style?: StyleProp<ViewStyle>;
36
+ };
37
+ /**
38
+ * A single header cell. Muted background with the bold token label style,
39
+ * matching the Figma `table header wrap` sub-component. Header cells carry no
40
+ * dividers; the header row draws a single bottom divider beneath them.
41
+ */
42
+ declare function TableHeaderCell({ children, align, width, flex, modes, style, }: TableHeaderCellProps): import("react/jsx-runtime").JSX.Element;
43
+ export type TableHeaderProps = {
44
+ children?: React.ReactNode;
45
+ modes?: Modes;
46
+ style?: StyleProp<ViewStyle>;
47
+ };
48
+ declare function TableHeader({ children, modes, style }: TableHeaderProps): import("react/jsx-runtime").JSX.Element;
49
+ export type TableRowProps = {
50
+ children?: React.ReactNode;
51
+ /** When provided, the whole row becomes pressable. */
52
+ onPress?: () => void;
53
+ modes?: Modes;
54
+ style?: StyleProp<ViewStyle>;
55
+ };
56
+ declare function TableRow({ children, onPress, modes, style }: TableRowProps): import("react/jsx-runtime").JSX.Element;
57
+ export type TableBodyProps = {
58
+ children?: React.ReactNode;
59
+ modes?: Modes;
60
+ style?: StyleProp<ViewStyle>;
61
+ };
62
+ declare function TableBody({ children, modes, style }: TableBodyProps): import("react/jsx-runtime").JSX.Element;
63
+ /**
64
+ * Column definition for the data-driven `Table` API. `T` is the shape of one
65
+ * row record.
66
+ */
67
+ export type TableColumn<T> = {
68
+ /** Stable key; also used to read `row[key]` when no `render` is provided. */
69
+ key: string;
70
+ /** Header label. Defaults to `key`. */
71
+ header?: React.ReactNode;
72
+ /** Cell + header horizontal alignment. @default 'left' */
73
+ align?: TableCellAlign;
74
+ /** Header-only alignment override. Defaults to `align`. */
75
+ headerAlign?: TableCellAlign;
76
+ /** Fixed column width. Omit to let the column flex. */
77
+ width?: number;
78
+ /** Flex-grow weight when `width` is not set. @default 1 */
79
+ flex?: number;
80
+ /** Custom cell renderer. Falls back to `row[key]` as text. */
81
+ render?: (row: T, rowIndex: number) => React.ReactNode;
82
+ };
83
+ export type TableProps<T = Record<string, unknown>> = {
84
+ /** Column definitions for the data-driven API. */
85
+ columns?: TableColumn<T>[];
86
+ /** Row records, one per table row. */
87
+ data?: T[];
88
+ /**
89
+ * Composition children (`Table.Header`, `Table.Body`, `Table.Row`,
90
+ * `Table.Cell`, `Table.HeaderCell`). When provided, `columns`/`data` are
91
+ * ignored and the children are rendered as-is.
92
+ */
93
+ children?: React.ReactNode;
94
+ /** Show the header row in the data-driven API. @default true */
95
+ showHeader?: boolean;
96
+ /** Resolve a stable key per row. Defaults to the row index. */
97
+ getRowKey?: (row: T, index: number) => React.Key;
98
+ /** Called when a row is pressed (data-driven API). Makes rows pressable. */
99
+ onRowPress?: (row: T, index: number) => void;
100
+ /**
101
+ * Wrap the table in a horizontal `ScrollView`. Use with fixed-width columns
102
+ * for wide tables that exceed the viewport on mobile. @default false
103
+ */
104
+ scrollable?: boolean;
105
+ /** Accessibility label for the table container. */
106
+ accessibilityLabel?: string;
107
+ /** Design token modes for theming (e.g. `{ "Color Mode": "Light" }`). */
108
+ modes?: Modes;
109
+ /** Override the outer container style. */
110
+ style?: StyleProp<ViewStyle>;
111
+ };
112
+ /**
113
+ * Table renders structured rows and columns. It supports two complementary
114
+ * usage styles that share the same token-driven styling:
115
+ *
116
+ * 1. **Data-driven** (recommended): pass `columns` + `data`. The header and body
117
+ * are built for you, columns stay aligned, and per-column `align`/`width`/
118
+ * `flex`/`render` give full control.
119
+ *
120
+ * 2. **Composition**: pass `Table.Header` / `Table.Body` / `Table.Row` /
121
+ * `Table.Cell` / `Table.HeaderCell` as children for bespoke layouts. These
122
+ * sub-components are also exported standalone.
123
+ *
124
+ * Implementation of Figma node `5732:3710` (`Table`) with sub-components
125
+ * `603:23` (`table-cell`) and `603:21` (`table header wrap`).
126
+ *
127
+ * @component
128
+ */
129
+ declare function Table<T = Record<string, unknown>>({ columns, data, children, showHeader, getRowKey, onRowPress, scrollable, accessibilityLabel, modes, style, }: TableProps<T>): import("react/jsx-runtime").JSX.Element;
130
+ declare namespace Table {
131
+ var Header: typeof TableHeader;
132
+ var HeaderCell: typeof TableHeaderCell;
133
+ var Body: typeof TableBody;
134
+ var Row: typeof TableRow;
135
+ var Cell: typeof TableCell;
136
+ }
137
+ export { TableHeader, TableHeaderCell, TableBody, TableRow, TableCell };
138
+ export default Table;
139
+ //# sourceMappingURL=Table.d.ts.map
@@ -21,6 +21,12 @@ export type TextProps = {
21
21
  style?: StyleProp<TextStyle>;
22
22
  /** Number of lines to limit the text to. */
23
23
  numberOfLines?: number;
24
+ /**
25
+ * When `true`, disables text truncation entirely: the trailing ellipsis (`…`)
26
+ * is never shown and any `numberOfLines` clamp is ignored, so the text wraps
27
+ * to as many lines as it needs even when horizontal space is tight.
28
+ */
29
+ disableTruncation?: boolean;
24
30
  /**
25
31
  * Explicit per-instance loading override. When `true`, this `Text` renders
26
32
  * a skeleton placeholder regardless of any surrounding `<SkeletonGroup>`.
@@ -41,6 +47,6 @@ export type TextProps = {
41
47
  */
42
48
  skeletonLines?: number;
43
49
  };
44
- declare function Text({ text, children, textAlign, modes, style, numberOfLines, loading, skeletonWidth, skeletonLines, }: TextProps): import("react/jsx-runtime").JSX.Element;
50
+ declare function Text({ text, children, textAlign, modes, style, numberOfLines, disableTruncation, loading, skeletonWidth, skeletonLines, }: TextProps): import("react/jsx-runtime").JSX.Element;
45
51
  export default Text;
46
52
  //# sourceMappingURL=Text.d.ts.map