lightning-base-components 1.21.3-alpha → 1.21.4-alpha

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 (183) hide show
  1. package/metadata/raptor.json +49 -0
  2. package/package.json +88 -21
  3. package/scopedImports/@salesforce-label-LightningDatatable.showActions.js +1 -1
  4. package/scopedImports/@salesforce-label-LightningForm.controllerFieldsMessage.js +1 -0
  5. package/scopedImports/@salesforce-label-LightningForm.dependentFieldsHeader.js +1 -0
  6. package/scopedImports/@salesforce-label-LightningForm.dependentFieldsListHeading.js +1 -0
  7. package/scopedImports/@salesforce-label-LightningForm.generalDependentFieldsMessage.js +1 -0
  8. package/scopedImports/@salesforce-label-LightningForm.learnMore.js +1 -0
  9. package/scopedImports/@salesforce-label-LightningForm.okButton.js +1 -0
  10. package/scopedImports/@salesforce-label-LightningLookup.modalCancel.js +1 -0
  11. package/scopedImports/@salesforce-label-LightningLookup.modalSelect.js +1 -0
  12. package/scopedImports/@salesforce-label-LightningProgressIndicator.currentStage.js +1 -1
  13. package/scopedImports/@salesforce-label-LightningProgressIndicator.errorStage.js +1 -0
  14. package/scopedImports/@salesforce-label-LightningProgressIndicator.stageComplete.js +1 -1
  15. package/scopedImports/@salesforce-label-LightningProgressIndicator.stageNotStarted.js +1 -1
  16. package/src/lightning/avatar/avatar.html +1 -0
  17. package/src/lightning/badge/badge.html +3 -3
  18. package/src/lightning/baseCombobox/baseCombobox.html +4 -1
  19. package/src/lightning/baseCombobox/baseCombobox.js +3 -16
  20. package/src/lightning/button/__docs__/button.md +2 -1
  21. package/src/lightning/button/button.js +3 -4
  22. package/src/lightning/buttonIcon/__docs__/buttonIcon.md +1 -0
  23. package/src/lightning/buttonIcon/buttonIcon.html +1 -1
  24. package/src/lightning/buttonIcon/buttonIcon.js +18 -17
  25. package/src/lightning/buttonMenu/buttonMenu.css +5 -0
  26. package/src/lightning/buttonMenu/buttonMenu.js +2 -0
  27. package/src/lightning/colorPickerCustom/colorPickerCustom.js +12 -0
  28. package/src/lightning/colorPickerPanel/colorPickerPanel.js +11 -1
  29. package/src/lightning/combobox/combobox.html +1 -0
  30. package/src/lightning/datatable/__examples__disabled/customComponentWrapper/customComponentWrapper.html +11 -0
  31. package/src/lightning/datatable/__examples__disabled/customComponentWrapper/customComponentWrapper.js +25 -0
  32. package/src/lightning/datatable/__examples__disabled/customComponentWrapper/generateData.js +15 -0
  33. package/src/lightning/datatable/__examples__disabled/myCustomTypeDatatable/customInput.html +4 -0
  34. package/src/lightning/datatable/__examples__disabled/myCustomTypeDatatable/myCustomTypeDatatable.js +17 -0
  35. package/src/lightning/datatable/__examples__disabled/myCustomTypeDatatable/nestedSimpleComponentParent.html +7 -0
  36. package/src/lightning/datatable/__examples__disabled/simpleComponentNested/simpleComponentNested.html +9 -0
  37. package/src/lightning/datatable/__examples__disabled/simpleComponentNested/simpleComponentNested.js +6 -0
  38. package/src/lightning/datatable/autoWidthStrategy.js +8 -36
  39. package/src/lightning/datatable/columnResizer.js +51 -161
  40. package/src/lightning/datatable/columnWidthManager.js +25 -81
  41. package/src/lightning/datatable/columns.js +180 -302
  42. package/src/lightning/datatable/datatable.js +455 -441
  43. package/src/lightning/datatable/errors.js +17 -29
  44. package/src/lightning/datatable/fixedWidthStrategy.js +7 -22
  45. package/src/lightning/datatable/headerActions.js +8 -38
  46. package/src/lightning/datatable/indexes.js +42 -0
  47. package/src/lightning/datatable/infiniteLoading.js +16 -35
  48. package/src/lightning/datatable/inlineEdit.js +125 -156
  49. package/src/lightning/datatable/keyboard.js +226 -282
  50. package/src/lightning/datatable/renderManager.js +0 -4
  51. package/src/lightning/datatable/resizeObserver.js +4 -13
  52. package/src/lightning/datatable/rowLevelActions.js +2 -2
  53. package/src/lightning/datatable/rowNumber.js +21 -59
  54. package/src/lightning/datatable/rowSelection.js +95 -178
  55. package/src/lightning/datatable/rowSelectionShared.js +13 -27
  56. package/src/lightning/datatable/rows.js +171 -418
  57. package/src/lightning/datatable/sort.js +16 -75
  58. package/src/lightning/datatable/templates/div/div.html +12 -4
  59. package/src/lightning/datatable/templates/div/div.lbc.synthetic.css +10 -16
  60. package/src/lightning/datatable/templates/table/table.html +15 -5
  61. package/src/lightning/datatable/tree.js +17 -35
  62. package/src/lightning/datatable/types.js +10 -31
  63. package/src/lightning/datatable/utils.js +49 -24
  64. package/src/lightning/datatable/virtualization.js +2 -5
  65. package/src/lightning/datatable/widthManagerShared.js +0 -20
  66. package/src/lightning/datatable/wrapText.js +29 -60
  67. package/src/lightning/dualListbox/dualListbox.js +7 -8
  68. package/src/lightning/formattedName/formattedName.js +3 -2
  69. package/src/lightning/formattedName/formattedName.js-meta.xml +3 -0
  70. package/src/lightning/formattedNumber/formattedNumber.js +3 -2
  71. package/src/lightning/formattedNumber/formattedNumber.js-meta.xml +3 -0
  72. package/src/lightning/formattedRichText/richTextConfig.js +1 -0
  73. package/src/lightning/helptext/helptext.css +7 -0
  74. package/src/lightning/helptext/helptext.js +3 -4
  75. package/src/lightning/icon/icon.html +1 -1
  76. package/src/lightning/input/input.html +5 -0
  77. package/src/lightning/inputAddress/addressFormat.js +31 -4
  78. package/src/lightning/inputAddress/fieldsLayout.js +6 -0
  79. package/src/lightning/inputAddress/inputAddress.html +19 -1
  80. package/src/lightning/inputAddress/inputAddress.js +74 -3
  81. package/src/lightning/internationalizationLibrary/address/AddressFormat.js +553 -610
  82. package/src/lightning/lookupAddress/lookupAddress.html +6 -1
  83. package/src/lightning/lookupAddress/lookupAddress.js +25 -0
  84. package/src/lightning/modal/__docs__/modal.md +10 -1
  85. package/src/lightning/modal/__modalUtils__/modalContainerTestConstants.js +3 -7
  86. package/src/lightning/modal/__modalUtils__/modalContainerTestMethods.js +39 -133
  87. package/src/lightning/modal/__modalUtils__/modalContainerTestMockData.js +1 -1
  88. package/src/lightning/modal/modal.js +1 -1
  89. package/src/lightning/modalBase/modalBase.html +15 -10
  90. package/src/lightning/modalBase/modalBase.js +131 -146
  91. package/src/lightning/modalBody/modalBody.css +6 -0
  92. package/src/lightning/modalHeader/modalHeader.html +16 -4
  93. package/src/lightning/modalHeader/modalHeader.js +61 -14
  94. package/src/lightning/pill/link.html +1 -0
  95. package/src/lightning/pill/plain.html +1 -0
  96. package/src/lightning/pill/plainLink.html +1 -0
  97. package/src/lightning/primitiveBubble/primitiveBubble.js +42 -0
  98. package/src/lightning/primitiveDatatableCell/primitiveDatatableCell.js +1 -1
  99. package/src/lightning/primitiveHeaderActions/primitiveHeaderActions.html +1 -1
  100. package/src/lightning/primitiveHeaderActions/primitiveHeaderActions.js +13 -0
  101. package/src/lightning/primitiveHeaderFactory/nonsortableHeader.html +19 -6
  102. package/src/lightning/primitiveHeaderFactory/sortableHeader.html +3 -1
  103. package/src/lightning/primitiveResizeHandler/primitiveResizeHandler.css +11 -0
  104. package/src/lightning/primitiveResizeHandler/primitiveResizeHandler.html +2 -1
  105. package/src/lightning/primitiveResizeHandler/primitiveResizeHandler.js +1 -0
  106. package/src/lightning/progressStep/base.html +5 -6
  107. package/src/lightning/progressStep/progressStep.js +14 -9
  108. package/src/lightning/prompt/__docs__/prompt.md +1 -1
  109. package/src/lightning/shadowBaseClassPrivate/shadowBaseClassPrivate.js +0 -2
  110. package/src/lightning/sldsCommon/sldsCommon.css +134 -98
  111. package/src/lightning/sldsUtilsAlignment/sldsUtilsAlignment.css +1 -1
  112. package/src/lightning/sldsUtilsBox/sldsUtilsBox.css +14 -13
  113. package/src/lightning/sldsUtilsGrid/sldsUtilsGrid.css +95 -92
  114. package/src/lightning/sldsUtilsHyphenation/sldsUtilsHyphenation.css +1 -1
  115. package/src/lightning/sldsUtilsMargin/sldsUtilsMargin.css +77 -75
  116. package/src/lightning/sldsUtilsPadding/sldsUtilsPadding.css +73 -73
  117. package/src/lightning/sldsUtilsSizing/sldsUtilsSizing.css +552 -558
  118. package/src/lightning/sldsUtilsVisibility/sldsUtilsVisibility.css +2 -2
  119. package/src/lightning/staticMap/staticMap.js +3 -2
  120. package/src/lightning/tab/tab.js +6 -3
  121. package/src/lightning/tab/tab.js-meta.xml +3 -0
  122. package/src/lightning/tabBar/tabBar.js +10 -5
  123. package/src/lightning/tabset/tabset.html +2 -0
  124. package/src/lightning/tabset/tabset.js-meta.xml +3 -0
  125. package/src/lightning/textarea/textarea.js +6 -1
  126. package/src/lightning/toastContainer/__docs__/toastContainer.md +3 -2
  127. package/src/lightning/tooltipLibrary/tooltipLibrary.js +24 -15
  128. package/src/lightning/verticalNavigation/vertical-navigation.slds.css +14 -0
  129. package/src/lightning/verticalNavigation/verticalNavigation.css +1 -1
  130. package/src/lightning/verticalNavigation/verticalNavigation.html +1 -1
  131. package/src/lightning/verticalNavigation/verticalNavigation.js +66 -28
  132. package/src/lightning/verticalNavigation/verticalNavigation.js-meta.xml +3 -0
  133. package/src/lightning/verticalNavigationItem/vertical-navigation-item.slds.css +63 -0
  134. package/src/lightning/verticalNavigationItem/verticalNavigationItem.css +2 -3
  135. package/src/lightning/verticalNavigationItem/verticalNavigationItem.js +29 -15
  136. package/src/lightning/verticalNavigationItem/verticalNavigationItem.js-meta.xml +3 -0
  137. package/src/lightning/verticalNavigationItem/verticalNavigationItem.lbc.native.css +2 -0
  138. package/src/lightning/verticalNavigationItem/verticalNavigationItem.lbc.synthetic.css +3 -0
  139. package/src/lightning/verticalNavigationItemBadge/badge.slds.css +76 -0
  140. package/src/lightning/verticalNavigationItemBadge/vertical-navigation-item.slds.css +63 -0
  141. package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.css +2 -3
  142. package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.html +1 -1
  143. package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.js +28 -15
  144. package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.js-meta.xml +3 -0
  145. package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.lbc.native.css +5 -0
  146. package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.lbc.synthetic.css +3 -0
  147. package/src/lightning/verticalNavigationItemIcon/vertical-navigation-item.slds.css +63 -0
  148. package/src/lightning/verticalNavigationItemIcon/verticalNavigationItemIcon.css +2 -3
  149. package/src/lightning/verticalNavigationItemIcon/verticalNavigationItemIcon.js +29 -15
  150. package/src/lightning/verticalNavigationItemIcon/verticalNavigationItemIcon.js-meta.xml +3 -0
  151. package/src/lightning/verticalNavigationItemIcon/verticalNavigationItemIcon.lbc.native.css +3 -0
  152. package/src/lightning/verticalNavigationItemIcon/verticalNavigationItemIcon.lbc.synthetic.css +3 -0
  153. package/src/lightning/verticalNavigationOverflow/button.slds.css +503 -0
  154. package/src/lightning/verticalNavigationOverflow/vertical-navigation-item.slds.css +63 -0
  155. package/src/lightning/verticalNavigationOverflow/vertical-navigation-section.slds.css +17 -0
  156. package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.css +2 -1
  157. package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.html +2 -0
  158. package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.js +18 -13
  159. package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.js-meta.xml +3 -0
  160. package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.lbc.native.css +5 -0
  161. package/src/lightning/verticalNavigationSection/vertical-navigation-section.slds.css +14 -14
  162. package/src/lightning/verticalNavigationSection/verticalNavigationSection.js-meta.xml +3 -0
  163. package/src/lightning/datatable/inlineEditShared.js +0 -26
  164. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatableWrapper/customDatatableWrapper.html +0 -0
  165. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatableWrapper/customDatatableWrapper.js +0 -0
  166. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeDeleteRowBtn/customDatatypeDeleteRowBtn.html +0 -0
  167. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeDeleteRowBtn/customDatatypeDeleteRowBtn.js +0 -0
  168. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeLink/customDatatypeLink.html +0 -0
  169. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeLink/customDatatypeLink.js +0 -0
  170. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeNumber/customDatatypeNumber.html +0 -0
  171. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeNumber/customDatatypeNumber.js +0 -0
  172. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeRowOrderingBtn/customDatatypeRowOrderingBtn.html +0 -0
  173. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeRowOrderingBtn/customDatatypeRowOrderingBtn.js +0 -0
  174. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/customDatatypeTable.js +0 -0
  175. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/customLink.html +0 -0
  176. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/customName.html +0 -0
  177. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/customNumber.html +0 -0
  178. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/customNumberEdit.html +0 -0
  179. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/deleteRow.html +0 -0
  180. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/iconPill.html +0 -0
  181. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/orderingButtons.html +0 -0
  182. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customNestedComponent/customNestedComponent.html +0 -0
  183. /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customNestedComponent/customNestedComponent.js +0 -0
@@ -28,10 +28,6 @@ export function setVirtualize(state, value) {
28
28
  }
29
29
  }
30
30
 
31
- export function getDTWrapperHeight() {
32
- return this.template.querySelector('.slds-scrollable_x').offsetHeight;
33
- }
34
-
35
31
  function getDefaultPreviousInfo() {
36
32
  return {
37
33
  renderedRowCount: 0,
@@ -1,34 +1,25 @@
1
1
  import { LightningResizeObserver } from 'lightning/resizeObserver';
2
2
  import { isTableRenderedVisible } from './columnResizer';
3
- import { getColumns } from './columns';
4
3
 
5
4
  const WIDTH_OBSERVER_SELECTOR = '.dt-width-observer';
6
5
 
7
6
  export class LightningDatatableResizeObserver {
8
7
  _connected = false;
9
- _resizeObserverAvailable = typeof ResizeObserver === 'function';
10
8
 
11
9
  /**
12
- * Depending on the browser/availability, this will create either a (standard)
13
- * ResizeObserver via LightningResizeObserver or fallback to the ResizeSensor
10
+ * Create either a standard ResizeObserver via LightningResizeObserver.
14
11
  */
15
- constructor(template, state, widthsData, columnWidthManager) {
12
+ constructor(template, resizeCallback) {
16
13
  const resizeTarget = template.querySelector(WIDTH_OBSERVER_SELECTOR);
17
-
18
14
  // Create ResizeObserver and begin observing for changes.
19
15
  // Calculate and modify the column widths when there are changes to the dimensions
20
- // and when the table is rendered and visible on screen
16
+ // and when the table is rendered and visible on screen.
21
17
  this._resizeObserver = new LightningResizeObserver(() => {
22
18
  if (this._connected && isTableRenderedVisible(template)) {
23
- columnWidthManager.adjustColumnsSizeAfterResize(
24
- template,
25
- getColumns(state),
26
- widthsData
27
- );
19
+ resizeCallback();
28
20
  }
29
21
  });
30
22
  this._resizeObserver.observe(resizeTarget);
31
-
32
23
  this._connected = true;
33
24
  }
34
25
 
@@ -1,5 +1,5 @@
1
1
  import { unwrap } from 'lwc';
2
- import { getUserRowByCellKeys } from './rows';
2
+ import { getUserRowByCellKeys } from './indexes';
3
3
  import { getUserColumnIndex } from './columns';
4
4
 
5
5
  /**
@@ -64,7 +64,7 @@ export function handleCellButtonClick(event) {
64
64
  const { colKeyValue, rowKeyValue } = event.detail;
65
65
  const selectedRow = getUserRowByCellKeys(state, rowKeyValue, colKeyValue);
66
66
  const colIndex = getUserColumnIndex(state, colKeyValue);
67
- const col = this._columns[colIndex];
67
+ const col = this._rawColumns[colIndex];
68
68
 
69
69
  this.dispatchEvent(
70
70
  new CustomEvent('rowaction', {
@@ -1,60 +1,17 @@
1
1
  import { normalizeNumberAttribute } from './utils';
2
2
  import labelRowLevelErrorAssistiveText from '@salesforce/label/LightningDatatable.rowLevelErrorAssistiveText';
3
- import labelRowNumber from '@salesforce/label/LightningDatatable.rowNumber';
4
3
  import { formatLabel } from 'lightning/utils';
5
- import { normalizeBoolean } from 'lightning/utilsPrivate';
6
4
 
7
5
  const CHAR_WIDTH = 10;
8
6
  const ROW_NUMBER_PADDING = 12;
9
7
  const ROW_NUMBER_COLUMN_TYPE = 'rowNumber';
10
- const i18n = {
11
- rowLevelErrorAssistiveText: labelRowLevelErrorAssistiveText,
12
- rowNumber: labelRowNumber,
13
- };
14
8
 
9
+ export const ROW_NUMBER_INITIAL_WIDTH = 52;
15
10
  export const TOOLTIP_ALLOWANCE = 20;
16
11
 
17
- /**
18
- * Returns the initial default column definition
19
- * for the row number column
20
- */
21
- export function getRowNumberColumnDef() {
22
- return {
23
- type: ROW_NUMBER_COLUMN_TYPE,
24
- ariaLabel: i18n.rowNumber,
25
- sortable: false,
26
- initialWidth: 52,
27
- minWidth: 52,
28
- maxWidth: 1000,
29
- tabIndex: -1,
30
- internal: true,
31
- resizable: false,
32
- };
33
- }
34
-
35
- /**
36
- * Retrieves showRowNumberColumn from the state
37
- * Can be used to determine if the datatable should
38
- * show the row number column or not
39
- */
40
- export function hasRowNumberColumn(state) {
41
- return state.showRowNumberColumn;
42
- }
43
-
44
- /**
45
- * Normalizes the passed in `value` to a boolean and
46
- * sets it to showRowNumberColumn in the state
47
- */
48
- export function setShowRowNumberColumn(state, value) {
49
- state.showRowNumberColumn = normalizeBoolean(value);
50
- }
51
-
52
- /**
53
- * Retrieves rowNumberOffset from the state
54
- */
55
- export function getRowNumberOffset(state) {
56
- return state.rowNumberOffset;
57
- }
12
+ const i18n = {
13
+ rowLevelErrorAssistiveText: labelRowLevelErrorAssistiveText,
14
+ };
58
15
 
59
16
  /**
60
17
  * Normalizes the passed in value to a non-negative number
@@ -70,10 +27,6 @@ export function setRowNumberOffset(state, value) {
70
27
  );
71
28
  }
72
29
 
73
- export function isRowNumberColumn(column) {
74
- return column.type === ROW_NUMBER_COLUMN_TYPE;
75
- }
76
-
77
30
  /**
78
31
  * Calculates the width of the row number column.
79
32
  * This takes into account the number of digits in the row number
@@ -91,7 +44,7 @@ export function getAdjustedRowNumberColumnWidth(state) {
91
44
  CHAR_WIDTH * numberOfChars +
92
45
  ROW_NUMBER_PADDING /* padding */ +
93
46
  TOOLTIP_ALLOWANCE /* primitive-tooltip */,
94
- getRowNumberColumnDef().initialWidth
47
+ ROW_NUMBER_INITIAL_WIDTH
95
48
  );
96
49
  }
97
50
 
@@ -103,7 +56,7 @@ export function getAdjustedRowNumberColumnWidth(state) {
103
56
  * @returns {Number} index of row number column. Returns -1 if not present
104
57
  */
105
58
  export function getRowNumberColumnIndex(state) {
106
- if (hasRowNumberColumn(state)) {
59
+ if (state.showRowNumberColumn) {
107
60
  const { columns } = state;
108
61
  for (let i = 0, { length } = columns; i < length; i += 1) {
109
62
  if (columns[i].type === ROW_NUMBER_COLUMN_TYPE) {
@@ -115,15 +68,13 @@ export function getRowNumberColumnIndex(state) {
115
68
  }
116
69
 
117
70
  /**
118
- * Constructs and returns the column definition for the row number column
119
- * Column definition contains the row number column's row type and
120
- * the error object containing the title, error messages and alt text
71
+ * Constructs columns definition error object containing the title, error messages and alt text.
121
72
  *
122
73
  * @param {Object} rowErrors - object containing metadata of errors in the row
123
74
  * @param {String} rowTitle - value of the cell which has the scope of the row/rowheader
124
75
  * @returns
125
76
  */
126
- export function getRowNumberErrorColumnDef(rowErrors, rowTitle) {
77
+ export function getRowNumberError(rowErrors, rowTitle) {
127
78
  const { cells, fieldNames, messages, title } = rowErrors || {};
128
79
  let numberOfErrors = 0;
129
80
  if (cells) {
@@ -131,17 +82,28 @@ export function getRowNumberErrorColumnDef(rowErrors, rowTitle) {
131
82
  } else if (fieldNames) {
132
83
  numberOfErrors = fieldNames.length;
133
84
  }
134
-
135
85
  const alternativeText = formatLabel(
136
86
  i18n.rowLevelErrorAssistiveText,
137
87
  rowTitle || '',
138
88
  numberOfErrors
139
89
  );
90
+ return { title, messages, alternativeText };
91
+ }
140
92
 
93
+ /**
94
+ * Constructs and returns the column definition for the row number column
95
+ * Column definition contains the row number column's row type and
96
+ * the error object containing the title, error messages and alt text
97
+ *
98
+ * @param {Object} rowErrors - object containing metadata of errors in the row
99
+ * @param {String} rowTitle - value of the cell which has the scope of the row/rowheader
100
+ * @returns
101
+ */
102
+ export function getRowNumberErrorColumnDef(rowErrors, rowTitle) {
141
103
  return {
142
104
  type: ROW_NUMBER_COLUMN_TYPE,
143
105
  typeAttributes: {
144
- error: { title, messages, alternativeText },
106
+ error: getRowNumberError(rowErrors, rowTitle),
145
107
  },
146
108
  };
147
109
  }