-
Notifications
You must be signed in to change notification settings - Fork 136
0.42.0 Breaking Changes
Mike O'Donnell edited this page Jul 12, 2023
·
1 revision
-
platform: Components that rely on
HasElementRefinterface:
-
HasElementRefinterface has been changed. Now instead ofelementRef()method, components should haveelementRef: ElementRefproperty. This can include getters too;
Core table:
-
TableCellDirectivenow directly extends fromFocusableItemDirective. Previously it hadFocusableItemDirectiveas a host directive applied to itself;
Platform table:
- All directives, services, models, data source classes are moved from
@fundamental-ngx/platform/tableinto a separate package@fundamental-ngx/platform/table-helpers. To keep backwards compatibility,@fundamental-ngx/platform/tablere-exports@fundamental-ngx/platform/table-helpersso that the import paths are the same as before; - Platform table directives are standalone now;
- Platform table data-source related functionality has been moved to
TableDataSourceDirectivestandalone directive. Input properties are preserved; - Platform table drag&drop related functionality has been moved to
TableDraggableDirectivestandalone directive. Input properties are preserved; - Platform table initial state related functionality has been moved to
TableInitialStateDirectivestandalone directive. Input properties are preserved; - Platform table virtual scroll related functionality has been moved to
TableVirtualScrollDirectivestandalone directive. Input properties are preserved; - Platform table data source has been refactored to utilize
@fundamental-ngx/cdk/data-sourceimplementation. Backwards compatibility is preserved for classes that extend from data-source/data-provider. More complex classes may need to be refactored according to new class signature; - Platform table now uses
TableRowImplclass as implementation ofTableRowinterface instead of simple object; - Helper methods from TableComponent has been moved to a standalone functions;
-
SearchInputtype is now not re-exported from@fundamental-ngx/platform/table. Instead use@fundamental-ngx/platform/search-field; - Table component html is now split between logical parts: table, table header rows, table content rows. Resulting markup is not changed, but the business logic parts are being moved to appropriate components;
- Platform table rows now try to reuse the html element they bounded to. This means that if developers use reference to elementRef of the row, and rows array changes, they need to manually recalculate the reference to the element;
- Platform table group row: text pattern changed from {{ column.name }} : {{ column.value }} to {{ column.name }}: {{ column.value }}. Space before colon has been removed;
- Platform table input properties recalculation now more efficient. Previously we checked property value on every
mousemove, now, only when something inside the table itself is changed. This may require additional detectChanges calls from developers who are using Platform Table. - Such input properties has been removed from platform table class:
-
dataSource- setter available viafdp-table[dataSource]but class property now accessible from_dataSourceDirectiveproperty of Table component; -
state,initialVisibleColumns,initialSortBy,initialFilterBy,initialGroupBy,initialPagesetters available viafdp-table[property]but the class property now accessible frominitialStateproperty of Table component; -
isTreeTable,enableRowReordering,dropModesetters available viafdp-table[property]but the class property now accessible via_dndTableDirectiveproperty of Table component; -
virtualScroll,renderAheadsetter available viafdp-table[virtualScroll], but the class property now accessible via_virtualScrollDirectiveproperty of Table component;
-
- Such events has been removed from Platform Table class:
-
rowsRearrange- listener still available viafdp-table(rowsRearrange), but actual eventEmitter is now located in_dndTableDirectiveproperty of Table component; -
onDataRequested,onDataReceived- listeners still available viafdp-table(event), but actual eventEmitters are now located in_dataSourceDirectiveproperty of Table component;
-
- Private API changed. For more information refer to this PR
- cdk,platform: Moved async-strategy from @fundamental-ngx/platform/shared to @fundamental-ngx/cdk/utils;