Change Log

ng-zorro-antd strictly follows Semantic Versioning 2.0.0.

Release Schedule#

  • Weekly release: patch version at the end of every week for routine bugfix (anytime for urgent bugfix).
  • Monthly release: minor version at the end of every month for new features.
  • Major version release is not included in this schedule for breaking change and new features.

19.0.0#

2024-12-06

Bug Fixes#

  • autocomplete: remove inline style (CSP compliant) (#8875) (30c25f0)
  • avatar: calculate size at the right time (#8754) (3a5ba37)
  • card: remove nzBorderless input (#8741) (22ce17c)
  • carousel: carousel not working correctly in rtl mode (#8770) (0202a19)
  • cascader: correct menu display level (#8866) (5fec53e)
  • drawer: should clear previously focused element (#8893) (4498af0)
  • i18n: add missing translations to vi_VN (#8894) (f08ad1c)
  • tree-view:nzTreeNodePadding not works in virtual scroll (#8920) (82b660a)

Code Refactoring#

  • cancel support for HTML string rendering (#8831) (5fae01a)
  • remove ngClass and ngStyle (#8895) (c3ab3ba)
  • image: remove deprecated FADE_CLASS_NAME_MAP and IMAGE_PREVIEW_MASK_CLASS_NAME (#8912) (65223d9)
  • transfer,tree,tree-select rename CheckBox to Checkbox (#8934) (c76433d5)

Features#

BREAKING CHANGES#

  • All

    • nzClass / nzStyle input properties no longer support the following features:
      • Set(): use arrays instead
      • Keys which multiple styles/classes separated with keys: split a key with spaces into multiple keys
    • Cancel support for HTML string rendering
    • Migrate @WithConfig to standard decorator. If you're using @WithConfig in your library, please turn experimentalDecorators off in tsconfig.json
    • Migrate [nz-icon] to nz-icon tag. If you're using [nz-icon] selector in stylesheet to select icon inside zorro component, please use nz-icon instead
  • input-number: Redesign the input-number so that it will be much simpler and more flexible.

    Now you can use affixes or addons as follows, no need for ng-template and nz-input-number-group:

    <!-- Custom handler icons -->
    <nz-input-number>
      <nz-icon nzInputNumberUpIcon />
      <nz-icon nzInputNumberDownIcon />
    </nz-input-number>
    
    <!-- With affixes -->
    <nz-input-number>
      <span nzInputPrefix>Prefix</span>
      <span nzInputSuffix>Suffix</span>
    </nz-input-number>
    
    <!-- With addons -->
    <nz-input-number>
      <span nzInputAddonBefore>Before</span>
      <span nzInputAddonAfter>After</span>
    </nz-input-number>

    The old input-number component is marked as deprecated, and its entrypoint had changed to ng-zorro-antd/input-number-legacy. NzInputNumberComponent is now NzInputNumberLegacyComponent, and NzInputNumberModule is now NzInputNumberLegacyModule.

    Don't worry, ng update ng-zorro-antd will automatically do the migration.

  • cascader: Cancel support for writing value with NzCascaderOption[] type.

    In the past, the cascader component kept a trick that if you wrote value with NzCascaderOption[] type, it extracted value by mapping each item to its value property, for example:

    @Component({
      template: `<nz-cascader [nzOptions]="options" [ngModel]="value"></nz-cascader>`
    })
    export class ExampleComponent {
      value = [{ label: 'NG ZORRO', value: 'ng-zorro-antd' }]
    }

    then the value of cascader would be 'ng-zorro-antd'. It's strange that the input and output values don't match when we haven't changed the values, and it's hard to maintain. We expect that the value passed in should be the value in the list of options.

    In v19, this trick is removed and if you're already using this trick in your code, please consider the add a map function to pass the actual value.

  • checkbox Redesign the checkbox group component.

    • Remove NzCheckBoxOptionInterface['checked] field. By the way, NzCheckBoxOptionInterface is marked as deprecated, use NzCheckboxOption instead
    • nz-checkbox-group: Type of ngModel is changed from NzCheckBoxOptionInterface[] to NzCheckboxOption['value'][]
  • card: Remove redundant nzBorderless input property. Use nzBordered instead.

  • image: Remove deprecated FADE_CLASS_NAME_MAP and IMAGE_PREVIEW_MASK_CLASS_NAME

  • pipes: Remove deprecated NzSafeNullPipe

  • segmented: Redesign the segmented component.

    • Value of ngModel is changed from index to option's value
    • Change emission type of nzValueChange from number to option's value type (string | number)
    • Remove nzLabelTemplate, use nz-segmented-item directive instead
  • space: Rename exportAs of NzSpaceComponent from NzSpace to standard nzSpace

  • transfer: Rename nzTreeCheckBoxChange to nzTreeCheckboxChange

  • tree,tree-select: Rename nzCheckBoxChange to nzCheckboxChange

Deprecations#

The following APIs are marked as deprecated in v19 and will be removed in the next major version. Please refer to related documentation for better alternatives.

ModuleAPI
ng-zorro-antd/buttonNzButtonGroupComponent
ng-zorro-antd/core/formNzFormPatchModule
ng-zorro-antd/checkboxNzCheckboxWrapperComponent
ng-zorro-antd/inputNzInputGroupComponent#nzCompact
ng-zorro-antd/input-number-legacy*
ng-zorro-antd/messageNzMessageModule
ng-zorro-antd/notificationNzNotificationModule
NzNotificationServiceModule

18.2.1#

2024-11-15

Bug Fixes#

  • anchor: fix a tag problem with null or undefined value if TemplateRef provided (#8864) (41f6609)
  • color-picker: remove inline style (CSP compliant) (#8874) (0264da9)
  • image: remove inline style (CSP compliant) (#8876) (63c8953)
  • qrcode: remove event listeners once settled (#8861) (40d466d)
  • select: remove inline style (CSP compliant) (#8873) (9431d0d)
  • transfer: cancel selecting all should emit nzSelectChange event (#8872) (5ff9821)
  • watermark: cleanup event listeners once settled (#8862) (decd477)

18.2.0#

2024-11-07

Bug Fixes#

  • i18n: add missing translations to nb_NO (#8712) (8c9bcd1)
  • i18n: add missing translations to hu_HU (#8769) (9e21ae8)
  • badge: NG0955 warning in nz-badge-sup component (#8858) (cc52555)
  • select: multiple select cause switch size flash when init (#8851) (d28876c)
  • carousel: correctly switch slides in rtl mode (#8705) (85f23a1)
  • drawer: emit nzVisibleChange when close on navigation (#8850) (29827df)
  • modal,drawer: secondary overlays not scrolling inside (#8804) (ed7951d)
  • modal: remove dark backdrop when nzMask is false (#8798) (f2f04fe)
  • transfer: correctly set transfer button disable state (#8824) (195ad26)

Features#

  • datepicker: send event emitter when panel mode change (#8685) (6462a47)
  • tabs: support destroyInactiveTabPane (#8845) (0de6d62)

18.1.1#

2024-08-20

Bug Fixes#

18.1.0#

2024-07-25

Bug Fixes#

  • cascader: hide placeholder when trigger compositionstart event (#8641) (17b0ea3)
  • i18n: add missing translations to pt_BR (#7790) (6fc1c78)
  • i18n: add scanned field to QRCode for fr_BE, fr_CA, fr_FR and lv_LV (#8614) (9b69410)
  • schematics: import missing RouterLink in template (#8621) (032a0c2)
  • transfer: disabling selection does not affect selecting all (#8633) (75d8c7b)

Features#

18.0.1#

2024-06-27

Bug Fixes#

18.0.0#

2024-06-06

⚠ BREAKING CHANGES#

  • collapse: change nzExpandIconPosition type from left | right to start | end (#8561) (3ad5674)
  • no longer use inline JavaScript in Less (#8552) (7e873c8)

No need to wrap Less functions provided by antd (including colorEasing, colorPalette, tinycolor) with ~`` anymore.

- color(~`colorPalette('@{primary-color}', 5)`)
+ color(colorPalette('@{primary-color}', 5))

Bug Fixes#

  • cascader,select,time-picker,tooltip,tree-select: take in account shadow dom when getting the target of an event (#7853) (843b703)
  • tooltip: fix arrow color when custom color (#8555) (92c586b)
  • upload: prevent drop event for firefox only (#8551) (c6e7bd7)
  • rate: half value when allow half is false (#8536) (7742fe3)

Features#

17.4.1#

2024-05-24

Bug Fixes#

  • card: use skeleton instead to card-loading-content (#8528) (a36ebd3)
  • color-picker: avoid emitted twice nzOnChange event (#8530) (5dea059)
  • list: static query list-item-action template (#8527) (85301e0)
  • popconfirm: fix message icon style (#8511) (4f1f9bb)
  • tooltip,popover,popconfirm: fix hydration error (#8512) (5009ec0)

Features#

  • popconfirm: popconfirm support for nzOkDisabled (#8542) (8c247db)

Performance Improvements#

  • back-top: remove the redundant changeDetectorRef (c1e39e7)
  • qr-code: improved background drawing efficiency (#8543) (db09bf7)

17.4.0#

2024-04-19

Bug Fixes#

Features#

  • modal: supports masked layer response for each click (#8429) (31b90fa)
  • notification: popup order adjustment (#8450) (742f14a)
  • select: support nzOptionHeightPx in global config (#8504) (4efc5ab), closes #8503
  • skeleton: support for square shape of skeleton button (#8481) (af1483a)

17.3.0#

2024-03-11

Bug Fixes#

Features#

17.2.0#

2024-01-29

Bug Fixes#

  • table: add missing import to nz-table-inner-scroll (#8328) (936317e)
  • tree-select: fix search box exception when Chinese search (#8324) (aacd62b)
  • pipeline job failed (#8367) (6024bcc)

Features#

17.1.0#

2023-12-17

Bug Fixes#

Features#

17.0.1#

2023-11-20

Bug Fixes#

  • schematics: cannot generate files and add default builders (#8176) (de8a6b7)

17.0.0#

2023-11-19

Bug Fixes#

  • autocomplete: fix the wrong value of internal nz-auto-option (#7907) (0a312e3)
  • cron-expression: exception error & cancel format prompt copy (#8114) (ea69790)
  • form: wrong element to focus when clicking label (#8135) (b3d135f)
  • i18n: added missing translations to pl_PL (#7950) (7819426)
  • i18n: update fa_IR translations (#8143) (4f63198)
  • i18n: Update fr/be/ca translations (#8137) (211db31)
  • mention: page not loading entirely (#8146) (9505c7c)
  • resizable: fix pointer capture bug (#8169) (a0b8a0b)
  • select: do not run tick when scrolling to activated value (#8159) (7ce50b3)
  • slider: step can not click the problem (#7820) (1e1c753)
  • table: custom column styles collapse when using nzScroll (#8044) (fde48f9)
  • tree-select: 修复回显顺序问题 (#8108) (eb4077d)
  • tree: nzCheckBoxChange never emitting (#8038) (a9dc205)

Features#

  • affix: support standalone component (#8037) (583883c)
  • hash-code: add HashCode component (#8111) (0254ee2)
  • image: add scale step (#8163) (5aa4db9)
  • notification: support for more custom templates (#8046) (9689c42)
  • schematics: support ng-add in standalone app (#8095) (c1b61f7)
  • slider: add the ability to use a template (#7505) (7c79ab3)
  • table: add nzLabel to include aria-label in checkboxes (#7903) (5834e46)
  • table: nzExpand supports custom icon (#7886) (1507ed0)
  • tooltip,popover,popconfirm: make cdkConnectedOverlayPush open for tooltip (#8166) (a821c62)

16.2.2#

2023-10-23

Bug Fixes#

16.2.1#

2023-10-19

Bug Fixes#

  • inline external css (#8122) (42da190)
  • color-picker: optimize demo copywriting and style (#8088) (6d03099)
  • menu: ellipsis menu title content if overflow (#8055) (0674f78)
  • tree-select: fixed the bug that the back shortcut key can delete the bug when the node is disabled (#8105) (07a1f5e)

Features#

  • select: support to customize attr.title of nz-option-item (#8097) (2ee261a)

16.2.0#

2023-09-18

Bug Fixes#

Features#

Performance Improvements#

16.1.0#

2023-07-16

Bug Fixes#

  • list: fix the bug that synchrone action item are not displayed in the item (#7958) (3b6bdec)
  • tree: fix nz-tree-node keep dragging class with nzBeforeDrop (#8015) (2d0b3f7)
  • cascader: customize the option title to undefined (#8011) (10003db), closes #8006
  • date-picker: fix code comment (#7991) (8b6b653)
  • i18n: update zh_TW.ts (#7901) (9bfce45)
  • notification: don't create new messageId for update (#8000) (e240264)
  • time-picker: modelChange trigger twice (#7902) (74c13a4)
  • watermark: removing the watermark fails to redraw (#8012) (030318e)

Features#

  • cron-expression: add Unit Testing (#7993) (605e969)
  • cron-expression: support nzDisabled && nzBorderless (#7992) (6d31bde)
  • dropdown: close context menu on escape (#7915) (6d0032e)
  • dropdown: improve NzContextMenuService#create() (#7768) (9b3e6cb)
  • form: support form label wrap (#7892) (37391de)
  • modal: Remove nzComponentParams in v16 (#7930) (baab16c)
  • qrcode: padding & background color for qrcode (#8001) (718ba29)
  • resizable: add direction parameter in NzResizeEvent (#7987) (4143473)
  • table: support display and sorting of custom table columns (#7966) (d26870f)

Performance Improvements#

16.0.0#

2023-05-31

Install ng-zorro-antd#

$ cd PROJECT-NAME
$ ng add ng-zorro-antd@16.0.0

Bug Fixes#

15.1.0#

2023-04-02

Bug Fixes#

Features#

Performance Improvements#

  • avatar: do not run change detection on timer and update styles directly (#7862) (1c48745)
  • date-picker: do not trigger change detection on mousedown (#7860) (1171460)

15.0.3#

2023-01-17

Bug Fixes#

15.0.2#

2023-01-15

Bug Fixes#

  • checkbox: checkbox group can't be disable initially (#7806) (eb2cb04)

15.0.1#

2023-01-09

Bug Fixes#

  • components: fix errors that some form components can't be disabled (#7786) (bc673e7)

15.0.0#

2022-12-21

Install ng-zorro-antd#

$ cd PROJECT-NAME
$ ng add ng-zorro-antd@15.0.0

Bug Fixes#

Performance Improvements#

14.3.0#

2022-12-11

Install ng-zorro-antd#

$ cd PROJECT-NAME
$ ng add ng-zorro-antd@15.0.0

Bug Fixes#

  • tree: nz-tree-drop-indicator for custom tree node templates (#7579) (5996019)
  • input: textarea-count combined with nzHasFeedback location (#7709) (ddd44d2), closes #7574
  • list: specify template ref context to match instantiation (#7756) (4eb32fd)
  • select: disabled option can be selected by Enter (#7686) (5bdf244)
  • tree: tree select search slow in virtual mode (#7385) (21208f0)

Features#

  • cron-expression: Optimize cron result display & support custom rendering cron time (#7750) (1820da5)
  • date-picker: add ElementRef type to nzSeparator (#7721) (3771512)
  • select: select on Tab support (#7728) (d9f9092)
  • tree-select: support to set placement (#7551) (325971e)

14.2.1#

2022-11-27

Bug Fixes#

  • animation: fix animation.disabled triggering condition (#7739) (2df4860)
  • i18n: add missing hu texts (#7733) (de71300)
  • select: activated value resetting during load on scroll (#7725) (9e08be9)

14.2.0#

2022-11-21

Bug Fixes#

  • cron-expression: clear ul & li default style (#7715) (726ded3)
  • date-picker: arrow in wrong position for RTL direction (#7690) (41b56e4)
  • date-picker: fix datePicker show multi panel (#7680) (ee4872e), closes #7450
  • descriptions: nzStringTemplateOutlet title style error (#7704) (bec3b42), closes #7698
  • icon: re-enter Angular zone after icons have been loaded (#7719) (754ded6)
  • image: preview the local upload image error (#7615) (616f59f)

Features#

  • alert: support custom icon (#7691) (cc014a1)
  • carousel:nzLoop to prevent the carousel to go in a loop (#7693) (e3103f0)
  • cron-expression: add cron-expression component (#7677) (3a638af)
  • popconfirm: make nzOkDanger coerce to boolean (#7720) (f6a8044)

14.1.1#

2022-10-15

Bug Fixes#

14.1.0#

2022-10-09

Bug Fixes#

  • cascader: fix wrong format of docs (#7604) (8b92c63)
  • i18n: update it_IT.ts (#7646) (aecb788)
  • pagination: add ul tag (#7500) (becdd68)
  • segmented: fix index.less not imported in entry.less (#7624) (1d6a646)
  • select: fix broken cdk virtual scroll integration (#7642) (1f10a9c)
  • select: input field length restricted to 82px (#7626) (82159e3)
  • statistic: remove top-level redundant div element (#7659) (07df410)
  • steps: remove top-level redundant div element (#7582) (60beabc)
  • typography: focus the element and set the value even if the zone is already stable (#7320) (2d2fe33)

Features#

14.0.0#

2022-08-25

Install ng-zorro-antd#

$ cd PROJECT-NAME
$ ng add ng-zorro-antd@14.0.0

Bug Fixes#

  • steps: remove top-level redundant div element (#7582) (60beabc)

Features#

- <i nz-icon nzType="search" nzTheme="outline"></i>
+ <span nz-icon nzType="search" nzTheme="outline"></span>

BREAKING CHANGES#

13.4.0#

2022-07-25

Bug Fixes#

  • datepicker: focus input when opened programmatically (#7512) (b3a27d8)
  • transfer: uncheck "Select all" checkbox when filtered items are moved (#7419) (1e9c11e)

Features#

Performance Improvements#

  • transfer: add trackBy to the list and track by the hide property (#7424) (0587236)

13.3.2#

2022-06-26

Bug Fixes#

  • input-number: fix errors before initialization (#7531) (800e6f4)

13.3.1#

2022-06-20

Bug Fixes#

  • input, input-number, steps: fix styles in components (#7522) (222b225)

13.3.0#

2022-06-15

Bug Fixes#

Features#

13.2.2#

2022-05-12

Bug Fixes#

  • tree-view: trigger markforcheck after nodes changed (#7426) (a702674)

13.2.1#

2022-04-27

Bug Fixes#

  • code-editor: remove monaco-editor dependency in config.ts (#7392) (929084d)

13.2.0#

2022-04-26

Bug Fixes#

  • carousel: fix nzAfterChange callback value not correctly (#7326) (b517bd4), closes #7323
  • cascader: fix the problem of disappearing drop-down menu (#7381) (3d41ce0)
  • cascader: update position when click menu item (#7306) (4c669a5)
  • i18n: update fr translations (#7364) (64e1c7c)
  • list: re-enter the Angular zone when the NgZone.onStable emits (#7314) (425f8df)
  • modal: no longer trigger any action when closing (#7336) (d169452)
  • popconfirm: reverting missing nzPopconfirmVisibleChange (#7338) (561041c)
  • upload: fix upload drag drop will open new tab in firefox 91 and 92 (#7190) (9b51874)

Features#

  • code-editor: add global configuration to support monaco require config (#7121) (21ec517)
  • code-editor: support MonacoEnvironment config in NZ_CONFIG (#7359) (4dfd9cd), closes #6502
  • image: nz-image add press left or right to switch image (#7321) (b5f82b5)
  • input-number: add nzReadOnly property (#7372) (0da7496), closes #7369

Performance Improvements#

  • anchor: mark scroll listener as passive (#7330) (aab060f)
  • back-top: mark scroll listener as passive (#7329) (7f3c4e1)
  • cascader: do not run change detection on change event (#7312) (cb803f9)
  • image: do not run change detection when the image preview is clicked (#7309) (752a5b6)
  • input-number: do not run change detection when mouseup and mouseleave events are dispatched on handlers (#7313) (54386ef)
  • modal: call focus() on the next rendering frame to prevent frame drop (#7293) (106d346)
  • resizable: mark mousedown and touchstart listeners as passive (#7331) (518997b)
  • tree-view: do not run change detection when the nz-tree-node-checkbox is clicked (#7307) (1e0872b)

13.1.1#

2022-03-03

Bug Fixes#

  • collapse: markForCheck after collapse title clicked (#7284) (b7433a9)
  • icon: do not try to load SVG on the Node.js side since it will throw an error (#7290) (fe0484f), closes #7240
  • select: exact match while searching should be active (#6816) (48d2a25), closes #6812
  • upload: fix the problem that the transformed file is lost (#7206) (b82d2f3)

13.1.0#

2022-02-25

Bug Fixes#

  • button: prevent default event fire (#7267) (2306e0d)
  • date-picker: fix z-index to auto in inline mode (#7172) (26006f6)
  • date-picker: fix disable time when date changes (#7236) (ae67952)
  • i18n: update fa-IR.ts translations (#7249) (a7a0b41)
  • i18n: update pt_BR.ts translations (#7218) (95c7816)
  • input: do not set box-sizing when measuring (#7214) (035dc94), closes #7203
  • input: incorrect background color in disabled state (#7250) (7acb8db)
  • radio: emit false to the ngModel whenever the radio button is deselected (#7270) (2704237)
  • select: fix keyboard event error when option data is empty (#7222) (4bd86ca), closes #7242
  • slider: fix keydown not trigger nzOnAfterChange (#7252) (f419c07), closes #7251

Features#

Performance Improvements#

  • auto-complete: do not run change detection when the promise resolves (#7138) (e95d941)
  • back-top: do not run change detection if there are no nzClick listeners (#7179) (7d091bb)
  • carousel: do not run change detection when the timer fires (#7136) (fc991d1)
  • collapse: do not run change detection if the panel is disabled (#7181) (3c3eac9)
  • dropdown: do not run change detection if the dropdown has been clicked inside (#7135) (4679592)
  • image: do not run change detection if there are no containerClick listeners (#7147) (f0f52a4)
  • mention: do not run change detection when the dropdown cannot be closed (#7146) (b72bd27)
  • mention: do not trigger change detections if there are no event listeners (#7130) (73af728)
  • resizable: do not run change detection on mousedown and touchstart events (#7170) (9a8d794)
  • select: do not run change detection on events if the nz-option-item is disabled (#7133) (a1bbdab)
  • select: do not run change detection unnecessarily on click events (#7175) (fd63d22)
  • table: do not run change detection if the sorting is not shown (#7174) (e541761)
  • table: do not unnecessarily re-enter the Angular zone (#7142) (5a5df13)
  • table: spawn timers and add listener outside of the zone (#7140) (ec248c9)
  • tabs: do not run change detection when the promise resolves (#7144) (148f84d)
  • time-picker: do not run change detection when the timer fires (#7143) (72da774)
  • tree-view: do not run change detection on click events if the nz-tree-node-option is disabled or there are no nzClick listeners (#7178) (0054f59)
  • typography: do not run change detection on input and keydown events (#7185) (ad547fb)

13.0.1#

2022-01-18

Bug Fixes#

Performance Improvements#

  • auto-complete: memory leak (#7112) (3806250)
  • cdk: resolve leak (#7139) (2a93d05)
  • checkbox: reduce change detection cycles (#7127) (15abe33)
  • code-editor: always initialize outside of the Angular zone (#7151) (f73be80)
  • core: remove resize listener when the app is destroyed (#7125) (8437111)
  • image: unsubscribe old src (#7102) (87a3e27)
  • input-number: reduce change detection cycles (#7129) (9971faa)
  • modal: do not run change detection on mouse events (#7169) (c20bb80)
  • modal: resolve memory leaks (#7123) (3664efe)
  • graph: do not run change detection on animation frame (#7132) (1ceaf70)
  • rate: do not run change detection on focus and blur events if there are no output listeners (#7182) (3e9e035)
  • steps: do not run change detection if there are no nzIndexChange listeners (#7183) (cbfc558)
  • transfer: do not trigger change detection when the checkbox is clicked (#7124) (b12f43a)

13.0.0#

2021-12-29

Removal of View Engine Support#

ng-zorro-antd@13 remove support for View Engine and use Ivy library for distribution, you will get faster building and smaller bundle size.

See Angular Ivy.

Removal of IE11 Support#

  • Removing IE11 support allows Angular to leverage modern browser features such as CSS variables and web animations via native web APIs
  • What’s more is that apps will be smaller and load faster because we can remove IE specific polyfills and code paths

See Issue #41840.

Enhanced Performance#

Fix the problems that may cause memory leak.

BREAKING CHANGES#

dropdown

  • [nzHasBackdrop] input value are no longer supported, please use [nzBackdrop] instead.

Old Versions#

All releases notes can be found here