Skip to content

4.0.0

Compare
Choose a tag to compare
@shlomiassaf shlomiassaf released this 02 Oct 20:30
· 92 commits to master since this release

ngrid

bug fix remove tilde from use rule (66a48ad11c814f17d332d4c4e1e7261ea92122e3)
bug fix revert to using ViewEngine package (3a1fe8f3202f4760d53085874279b26cfd902e88)
bug fix scss bundles proper export (c86b9b5140e584971aeeaf50223a03a72e014e36)
bug fix force export augmenting d.ts files (f2c60ab)
bug fix sort: support empty strings when sorting (6a1023e066a297f6b87c8a37554fc73ac723e114)

Highlights

Sass

Sass theming API has been reworked so that clients can take advantage of @use. This includes:

  • A single entry point into @pebula/ngrid, @pebula/ngrid-material and @pebula/ngrid-bootstrap
  • Renamed functions, mixins, and variables to be a better reflection of what they do
  • Applications still using node-sass will need to switch to the sass package
    For more information, check out the new material theming guide and ngrid's theming docs.
  • For convinience, legacy theming API is still availavle at @pebula/ngrid/theming, @pebula/ngrid-material/theming and @pebula/ngrid-bootstrap/theming. The legacy API will be removed in v5.0.0

IVY APF v12

Starting from version 4 of nGrid, the library is packaged using the new IVY Angular Pacakge Format (v12).

Compilation is done in ViewEngine mode.
While angular recommends compiling in partial-ivy mode, it has several limitations:

  • Support is still not wide-spread so several tools will not load nGrid (StackBlitz, CodeSandbox, etc...)
  • Applcations still running in ViewEnginge will not be able to run nGrid while IVY application can use NGCC
  • NGCC in v12 is still fully operational, so why limit?
  • @angular/components (material) is also publishing v12 libaraies in ViewEngine

However, as part of the CI process we still compile with partial-ivy mode enabled to catch errors since it is still new and has it's quirks which required some shellow API changes to work around it's issues. There should be no effect and used to ensure futute competability, however, if you experience strange behaviour please report.

In addition, symboles exposes in public modules are now required to be exposed in the public API as well. This resulted in multiple symboles which were previously private now exposed.

Aligned with v12 of the angular eco-system

Library is now on par with version 12 of angular, @angular/cdk and @angular/components (material).

Since nGrid@v4 is IVY compiled and the CDK does not support previous versions, v4 of nGrid will only run on angular version 12 and up.