MCPcopy Index your code
hub / github.com/angular/components / createGridRows

Function createGridRows

src/aria/private/grid/grid.spec.ts:75–123  ·  view source on GitHub ↗
(grid: GridPattern, data: TestRowData[])

Source from the content-addressed store, hash-verified

73}
74
75function createGridRows(grid: GridPattern, data: TestRowData[]) {
76 const builtWidgets: GridCellWidgetPattern[] = [];
77 const gridRows = data.map((rowData, rowIndex) => {
78 const rowInputs: TestGridRowInputs = {
79 grid: signal(grid),
80 cells: signal([]),
81 rowIndex: signal(rowData.rowIndex),
82 };
83 const row = new GridRowPattern(rowInputs);
84
85 const rowCells = rowData.cells.map((cellData, colIndex) => {
86 const cellInputs: TestGridCellInputs = {
87 id: signal(cellData.id ?? `cell-${rowIndex}-${colIndex}`),
88 element: signal(document.createElement('div')),
89 grid: signal(grid),
90 row: signal(row),
91 widget: signal<GridCellWidgetPattern | undefined>(undefined),
92 rowIndex: signal(cellData.rowIndex),
93 colIndex: signal(cellData.colIndex),
94 selectable: signal(cellData.selectable ?? true),
95 disabled: signal(cellData.disabled ?? false),
96 rowSpan: signal(cellData.rowSpan ?? 1),
97 colSpan: signal(cellData.colSpan ?? 1),
98 selected: signal(cellData.selected ?? false),
99 getWidget: (el: Element | null) => builtWidgets.find(w => w.element() === el),
100 };
101 const cell = new GridCellPattern(cellInputs);
102
103 if (cellData.widget) {
104 const widgetInputs: TestGridCellWidgetInputs = {
105 cell: signal(cell),
106 element: signal(document.createElement('div')),
107 widgetType: signal(cellData.widget.widgetType ?? 'simple'),
108 focusTarget: signal(undefined),
109 disabled: signal(cellData.widget.disabled ?? false),
110 };
111 const widget = new GridCellWidgetPattern(widgetInputs);
112 builtWidgets.push(widget);
113 cellInputs.widget.set(widget);
114 }
115
116 return cell;
117 });
118
119 rowInputs.cells.set(rowCells);
120 return row;
121 });
122 return {gridRows};
123}
124
125function getDefaultGridInputs(): TestGridInputs {
126 return {

Callers 2

createGridFunction · 0.85
grid.spec.tsFile · 0.85

Calls 4

signalFunction · 0.90
setMethod · 0.80
pushMethod · 0.65
elementMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…