Skip to content

Commit f05e700

Browse files
MayaKirovaMKirovadkamburovdamyanpetevCopilot
authored
refactor(grids): Move all elements specific code to angular-element's source (#15304)
* feat(elements): Move elements specific members of IgxGrid into elements. * feat(igxHGrid): Extract elements specific members for hgrid. * chore(*): Move row island elements specific members to elements. * chore(*): Extract tree grid elements members into elements. * chore(*): Bring back selectedRowsChange in base since it has become public. * chore(*): Fix build errors. * chore(*): Fix imports after merge. * chore(*): Regen elements cofig. * chore(*): Add missing nav service provider. * chore(*): Remove unused import. * chore(*): Bump a bit maximumError size. * refactor(elements,grid): move childrenResolved event to elements project (#17140) Co-authored-by: Damyan Petev <damyanpetev@users.noreply.github.com> * chore(*): Adjust tags for Blazor. * Update projects/igniteui-angular-elements/src/lib/grids/grid.component.ts Co-authored-by: Damyan Petev <damyanpetev@users.noreply.github.com> * chore(*): Apply review comments. * chore(*): regenerate config. * chore(*): Move two-way bind emitter in elements. * Update projects/igniteui-angular-elements/src/lib/grids/events.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding 'Expression has no effect' Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * chore(*): Use aliases so that igxParent don't have to change. * chore(*): apply review comments * chore(*): Move comments to correct place. * fix(elements): Apply wc alternate name tag instead. * chore(*): Make sure elements specific events re-emit for row island. * chore(*): Move actionStripComponents.changes to elements. * chore(*): revert Move actionStripComponents.changes to elements." * chore(*): Move actionStripComponents back to base. * fix(row-island): change actionStripComponents visibility to public. * fix(grid): remove unused imports. * chore(*): Regenerate config. * chore(*): Remove unnecessary actionStripComponent. * chore(*): Hide more stuff. --------- Co-authored-by: MKirova <MKirova@DEV-MKIROVA> Co-authored-by: Deyan Kamburov <dkamburov@users.noreply.github.com> Co-authored-by: Damyan Petev <damyanpetev@users.noreply.github.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: Konstantin Dinev <kdinev@infragistics.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> Co-authored-by: skrustev <striker18@mail.bg>
1 parent 2643c7c commit f05e700

21 files changed

Lines changed: 754 additions & 175 deletions

angular.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@
373373
{
374374
"type": "allScript",
375375
"maximumWarning": "2.5mb",
376-
"maximumError": "3mb"
376+
"maximumError": "3.5mb"
377377
},
378378
{
379379
"type": "bundle",

package-lock.json

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

projects/igniteui-angular-elements/src/analyzer/config.template.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import { IgxQueryBuilderComponent } from '../../../igniteui-angular/query-builder';
2-
import { IgxGridComponent } from '../../../igniteui-angular/grids/grid';
3-
import { IgxHierarchicalGridComponent } from '../../../igniteui-angular/grids/hierarchical-grid';
42
import { IgxPivotDataSelectorComponent, IgxPivotGridComponent } from '../../../igniteui-angular/grids/pivot-grid';
5-
import { IgxTreeGridComponent } from '../../../igniteui-angular/grids/tree-grid';
3+
import { IgxGridComponent } from '../lib/grids/grid.component';
4+
import { IgxHierarchicalGridComponent } from '../lib/grids/hierarchical-grid.component';
5+
import { IgxTreeGridComponent } from '../lib/grids/tree-grid.component';
66

77
export const registerComponents = [
88
IgxGridComponent,

projects/igniteui-angular-elements/src/analyzer/elements.config.ts

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import { IgxQueryBuilderComponent } from "../../../igniteui-angular/query-builder";
2-
import { IgxGridComponent } from "../../../igniteui-angular/grids/grid";
3-
import { IgxHierarchicalGridComponent } from "../../../igniteui-angular/grids/hierarchical-grid";
42
import {
53
IgxPivotDataSelectorComponent,
64
IgxPivotGridComponent,
75
} from "../../../igniteui-angular/grids/pivot-grid";
8-
import { IgxTreeGridComponent } from "../../../igniteui-angular/grids/tree-grid";
6+
import { IgxGridComponent } from "../lib/grids/grid.component";
7+
import { IgxHierarchicalGridComponent } from "../lib/grids/hierarchical-grid.component";
8+
import { IgxTreeGridComponent } from "../lib/grids/tree-grid.component";
99
import { IgxPaginatorComponent } from "../../../igniteui-angular/paginator/src/paginator/paginator.component";
1010
import { IgxPaginatorToken } from "../../../igniteui-angular/paginator/src/paginator/token";
1111
import { IgxColumnGroupComponent } from "../../../igniteui-angular/grids/core/src/columns/column-group.component";
@@ -23,7 +23,7 @@ import { IgxToolbarToken } from "../../../igniteui-angular/grids/core/src/toolba
2323
import { IgxGridToolbarExporterComponent } from "../../../igniteui-angular/grids/core/src/toolbar/grid-toolbar-exporter.component";
2424
import { IgxGridToolbarHidingComponent } from "../../../igniteui-angular/grids/core/src/toolbar/grid-toolbar-hiding.component";
2525
import { IgxGridToolbarPinningComponent } from "../../../igniteui-angular/grids/core/src/toolbar/grid-toolbar-pinning.component";
26-
import { IgxRowIslandComponent } from "../../../igniteui-angular/grids/hierarchical-grid/src/row-island.component";
26+
import { IgxRowIslandComponent } from "../lib/grids/row-island.component";
2727
import { IgxActionStripComponent } from "../../../igniteui-angular/action-strip/src/action-strip/action-strip.component";
2828
import { IgxActionStripToken } from "../../../igniteui-angular/core/src/grid-column-actions/token";
2929
import { IgxGridStateComponent } from "../lib/state.component";
@@ -44,8 +44,8 @@ export var registerConfig = [
4444
selector: "igc-action-strip",
4545
parents: [
4646
IgxGridComponent,
47-
IgxTreeGridComponent,
4847
IgxHierarchicalGridComponent,
48+
IgxTreeGridComponent,
4949
IgxRowIslandComponent,
5050
],
5151
contentQueries: [
@@ -65,8 +65,8 @@ export var registerConfig = [
6565
selector: "igc-column",
6666
parents: [
6767
IgxGridComponent,
68-
IgxTreeGridComponent,
6968
IgxHierarchicalGridComponent,
69+
IgxTreeGridComponent,
7070
IgxPivotGridComponent,
7171
IgxRowIslandComponent,
7272
IgxColumnGroupComponent,
@@ -122,8 +122,8 @@ export var registerConfig = [
122122
selector: "igc-column-group",
123123
parents: [
124124
IgxGridComponent,
125-
IgxTreeGridComponent,
126125
IgxHierarchicalGridComponent,
126+
IgxTreeGridComponent,
127127
IgxColumnGroupComponent,
128128
IgxRowIslandComponent,
129129
],
@@ -241,15 +241,15 @@ export var registerConfig = [
241241
parents: [],
242242
contentQueries: [
243243
{
244-
property: "columnList",
245-
childType: IgxColumnComponent,
244+
property: "actionStripComponents",
245+
childType: IgxActionStripToken,
246246
isQueryList: true,
247-
descendants: true,
248247
},
249248
{
250-
property: "actionStripComponents",
251-
childType: IgxActionStripToken,
249+
property: "columnList",
250+
childType: IgxColumnComponent,
252251
isQueryList: true,
252+
descendants: true,
253253
},
254254
{ property: "toolbar", childType: IgxToolbarToken, isQueryList: true },
255255
{
@@ -465,8 +465,8 @@ export var registerConfig = [
465465
selector: "igc-grid-toolbar",
466466
parents: [
467467
IgxGridComponent,
468-
IgxTreeGridComponent,
469468
IgxHierarchicalGridComponent,
469+
IgxTreeGridComponent,
470470
IgxPivotGridComponent,
471471
],
472472
contentQueries: [
@@ -531,15 +531,15 @@ export var registerConfig = [
531531
descendants: true,
532532
},
533533
{
534-
property: "paginatorList",
535-
childType: IgxPaginatorToken,
534+
property: "actionStripComponents",
535+
childType: IgxActionStripToken,
536536
isQueryList: true,
537-
descendants: true,
538537
},
539538
{
540-
property: "actionStripComponents",
541-
childType: IgxActionStripToken,
539+
property: "paginatorList",
540+
childType: IgxPaginatorToken,
542541
isQueryList: true,
542+
descendants: true,
543543
},
544544
{
545545
property: "columnList",
@@ -873,23 +873,23 @@ export var registerConfig = [
873873
parents: [IgxHierarchicalGridComponent, IgxRowIslandComponent],
874874
contentQueries: [
875875
{
876-
property: "children",
876+
property: "childLayoutList",
877877
childType: IgxRowIslandComponent,
878878
isQueryList: true,
879879
},
880880
{
881-
property: "childLayoutList",
881+
property: "children",
882882
childType: IgxRowIslandComponent,
883883
isQueryList: true,
884884
},
885885
{
886-
property: "childColumns",
887-
childType: IgxColumnComponent,
886+
property: "actionStripComponents",
887+
childType: IgxActionStripToken,
888888
isQueryList: true,
889889
},
890890
{
891-
property: "actionStripComponents",
892-
childType: IgxActionStripToken,
891+
property: "childColumns",
892+
childType: IgxColumnComponent,
893893
isQueryList: true,
894894
},
895895
{
@@ -1022,15 +1022,15 @@ export var registerConfig = [
10221022
parents: [],
10231023
contentQueries: [
10241024
{
1025-
property: "columnList",
1026-
childType: IgxColumnComponent,
1025+
property: "actionStripComponents",
1026+
childType: IgxActionStripToken,
10271027
isQueryList: true,
1028-
descendants: true,
10291028
},
10301029
{
1031-
property: "actionStripComponents",
1032-
childType: IgxActionStripToken,
1030+
property: "columnList",
1031+
childType: IgxColumnComponent,
10331032
isQueryList: true,
1033+
descendants: true,
10341034
},
10351035
{ property: "toolbar", childType: IgxToolbarToken, isQueryList: true },
10361036
{

projects/igniteui-angular-elements/src/app/components.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,18 @@ import { NgElement, WithProperties } from '@angular/elements';
22
import { registerConfig } from "../analyzer/elements.config";
33
import { createIgxCustomElement, withRegister } from './create-custom-element';
44
import { IgxGridStateComponent } from '../lib/state.component';
5+
import { IgxGridComponent } from '../lib/grids/grid.component';
56
import { IgxIconBroadcastService } from '../lib/icon.broadcast.service';
67
import { injector } from '../utils/injector-ref';
78
import { registerComponent } from '../utils/register';
89
import { IgxPaginatorComponent } from 'igniteui-angular/paginator';
910
import { IgxActionStripComponent } from 'igniteui-angular/action-strip';
10-
import { IgxGridComponent } from 'igniteui-angular/grids/grid';
11-
import { IgxTreeGridComponent } from 'igniteui-angular/grids/tree-grid';
12-
import { IgxHierarchicalGridComponent, IgxRowIslandComponent } from 'igniteui-angular/grids/hierarchical-grid';
1311
import { IgxPivotDataSelectorComponent, IgxPivotGridComponent } from 'igniteui-angular/grids/pivot-grid';
1412
import { GridType, IgxColumnComponent, IgxColumnGroupComponent, IgxColumnLayoutComponent, IgxGridEditingActionsComponent, IgxGridPinningActionsComponent, IgxGridToolbarActionsComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarComponent, IgxGridToolbarExporterComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxGridToolbarTitleComponent } from 'igniteui-angular/grids/core';
1513
import { IgxQueryBuilderComponent, IgxQueryBuilderHeaderComponent } from 'igniteui-angular/query-builder';
14+
import { IgxHierarchicalGridComponent } from '../lib/grids/hierarchical-grid.component';
15+
import { IgxRowIslandComponent } from '../lib/grids/row-island.component';
16+
import { IgxTreeGridComponent } from '../lib/grids/tree-grid.component';
1617

1718
// force-create icon service, TODO: move to initializer or register/define mechanic to avoid side-effect?
1819
const _iconBroadcast: IgxIconBroadcastService = injector.get(IgxIconBroadcastService);

projects/igniteui-angular-elements/src/index.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -527,6 +527,9 @@ <h3 class="ig-typography__h6">Flat Grid (MRL column layout)</h3>
527527
</igc-grid-toolbar-actions>
528528
</igc-grid-toolbar>
529529
`;
530+
virtualMachinesRowIsland.addEventListener('columnsAutogenerated', (e) => {
531+
console.log('columns autogenerated for VirtualMachinesRowIsland', e);
532+
});
530533
</script>
531534

532535
<igc-grid auto-generate="false" id="mergedGrid" cell-merge-mode="always" width="100%" height="570px">
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import { ColumnType, IBaseEventArgs } from 'igniteui-angular/core';
2+
3+
export interface IColumnsAutoGeneratedEventArgs extends IBaseEventArgs {
4+
/* blazorTreatAsCollection */
5+
/* blazorCollectionName: ColumnCollection */
6+
columns?: ColumnType[]
7+
}

0 commit comments

Comments
 (0)