Skip to content

Releases: angular/components

tartan-tonsure

04 Mar 21:57
bf84ba9
Compare
Choose a tag to compare

material

bug fix chips: only add type attribute to button remove icons (#18477) (584cd49), closes #18095 #18464
bug fix sidenav: not restoring focus to SVG elements (#18614) (ed763f5)

material-experimental

bug fix mdc-button: add base css class to all buttons (#18422) (144cb41)
bug fix mdc-chips: align with latest MDC markup (#18472) (7db3e3a)
bug fix mdc-chips: don't allow focus on checkmark icon (#18588) (8637f66)
bug fix mdc-radio: able to focus disabled radio button via click (#18584) (cdd3600), closes #15499
bug fix mdc-radio: use consistent ripple timings (#18590) (2658d9d)

adamantium-mannequin

24 Feb 19:14
220447e
Compare
Choose a tag to compare

Highlights

  • Column resizing for tables is now in experimental (198911)
  • Selection list now supports a single selection mode. Enable it with the multiple input set to false.
  • FakeMatIconRegistry has been added for unit testing.
  • Added a new Sass mixin, mat-strong-focus-indicators, that can be used to add a stronger focus
    indicator to Angular Material components

cdk

bug fix text-field: fix autofill listener on Chrome 80 (#18468) (4b329f0)
feature testing: add isFocused method to TestElement (#18183) (e704996)

material

Deprecations:

  • MAT_LABEL_GLOBAL_OPTIONS exported in
    @angular/material/core is deprecated. Use MAT_FORM_FIELD_DEFAULT_OPTIONS
    from @angular/material/form-field. Note that the property float is
    now matching the input name floatLabel.
  • FloatLabelType exported in @angular/material/core is
    deprecated. Import the symbol from @angular/material/from-field.
bug fix a11y: focus trap incorrectly moving focus internally if focus was already moved into it (#18541) (c704d17), closes #18538
bug fix chips: unable to set custom tabindex on chip (#17699) (bbb92a7)
bug fix clipboard: leak if directive is destroyed while a copy is pending (#18066) (9227c7b)
bug fix datepicker: don't call date filter function if date is out of bounds (#18419) (5e34de2), closes #18411
bug fix datepicker: memory leak in popup mode (#18102) (5fe233a), closes #17896
bug fix drag-drop: auto scrolling not working if list uses scroll snapping (#18294) (9459f5b), closes #18162
bug fix drag-drop: error when dragging items inside transplanted views with OnPush change detection (#18356) (f2f78a0), closes #18341
bug fix drag-drop: not working correctly inside transplanted views (#18499) (d1a6ea7), closes #18482
bug fix expansion-panel: Fix clipped box-shadow between expansion panel headers. (#18378) (dddbca2)
bug fix form-field: fix underline jank in fill variant (#18407) (52fea06)
bug fix icon/testing: Adds size specs to fake icon (#18306) (27ef842)
bug fix input: apply static class binding to host (#18196) (8f62ffe)
bug fix list: allow for list and list items to be disabled (#17584) (c6a9f15), closes #17574
bug fix list: Selection List element should not be focusable. (#18445) (fd1593d)
bug fix ng-update: avoid error if project has folder ending with style extension (#18454) (411d048), closes #18434
bug fix ng-update: do not throw if project does not have dependencies (#18470) (01e4fba), closes #18469
bug fix overlay: incorrectly calculating using minWidth and minHeight as a string (#18540) (0d7e2f0), closes #18486
bug fix overlay: restore previous host element before attaching (#17855) (ee96e05)
bug fix platform: RTL scrolling behavior detection not using cached value in some cases (#18389) (633e4c2)
bug fix selection-list: incorrectly handling A key in some cases (#18513) (ff0de11)
bug fix consistently use const enum (#18390) (8ae7b18)
bug fix popover-edit: Call markForCheck against row hover content when showing (#18258) (5c9f0d6)
bug fix progress-bar: changed after checked error on animation end event with noop animations (#18441) (004eeb8)
bug fix slide-toggle: clicks not landing correctly in some cases on Chrome (#18285) (99b27e8), closes #18269
bug fix ng-add should always install matching CDK version (#18076) (fba22bc), closes #18020 #18020
bug fix slider: inject document token (#18275) (3bae800)
bug fix tree: not allowing horizontal overflow (#18215) (c5923d6), closes #18182
feature autocomplete: add event when option is activated (#18387) (4629e23), closes #17587
feature chip: Add focus indicator (#18019) (78cfd3c)
feature drag-drop: add injection token for configuring the input defaults (#17970) (4667cd4), closes #17921
feature drag-drop: add option to match size of dragged element in custom preview (#18362) (74b3441), closes #18177
feature drag-drop: support scrolling parent elements apart from list and viewport (#18082) (c319431), closes #18072 #13588
feature icon: New FakeMatIconRegistry for unit tests (#18151) (71955d2)
feature list: Add single select mode. (#18126) (3b242f0)
feature paginator: add provider to configure default options (#17595) (c7c6262), closes [#17123](https://github.com/angular/components/issues...
Read more

copper-canoe

19 Feb 23:28
2454e18
Compare
Choose a tag to compare

material

bug fix drag-drop: error when dragging items inside transplanted views with OnPush change detection (#18356) (bd68a4f), closes #18341
bug fix list: selection list element should not be focusable (#18445) (b61582c)
bug fix ng-update: avoid error if project has folder ending with style extension (#18454) (1cb7099), closes #18434
bug fix ng-update: better detection for workspace project in v9 hammer migration (#18525) (7a2d372), closes #18504
bug fix slider: inject document token in constructor (#18275) (d8b726d)

tungsten-hombre

06 Feb 20:05
25ace54
Compare
Choose a tag to compare

Highlights

New @angular/cdk/testing infrastructure and Angular Material test harnesses

Testing components has historically relied on using implementation details such as CSS selectors to
find components and to trigger events. This meant that whenever a component library changed its
implementation, all of the tests relying on those components would need to be updated.

In version 9, we are introducing component harnesses, which offer an alternative way to test
components. By abstracting away the implementation details, you can make sure your unit tests are
correctly scoped and less brittle.

Most of Angular Material's components can now be tested via harnesses, and we are making harnesses
available to any component author as part of the Component Dev Kit (CDK).

Here's an example test before harnesses:

 it('should switch to bug report template', async () => {
    expect(fixture.debugElement.query('bug-report-form')).toBeNull();
    const selectTrigger = fixture.debugElement.query(By.css('.mat-select-trigger'));
    selectTrigger.triggerEventHandler('click', {});
    fixture.detectChanges();
    await fixture.whenStable();
    const options = document.querySelectorAll('.mat-select-panel mat-option');
    options[1].click(); // Click the second option, "Bug".
    fixture.detectChanges();
    await fixture.whenStable();
    expect(fixture.debugElement.query('bug-report-form')).not.toBeNull();
  });

And the same test with harnesses:

 it('should switch to bug report template', async () => {
    expect(fixture.debugElement.query('bug-report-form')).toBeNull();
    const select = await loader.getHarness(MatSelect);
    await select.clickOptions({text: 'Bug'});
    expect(fixture.debugElement.query('bug-report-form')).not.toBeNull();
  });

Learn more about Angular Material's component harnesses or building your own with the CDK.

New @angular/google-maps package!

Earlier this year, we changed the name of this repo to "angular/components" to emphasize our goal
to provide more than Material Design components. The 9.0.0 release includes one of the next new
features in that regard- a new package that wraps the Google Maps JavaScript API in an easy-to-use Angular component.

You can see the documentation on GitHub for the time being.

Big thanks to @mbehrlich for contributing this!

New cdk/clipboard subpackage containing helpers for working with the clipboard.

This new capability for @angular/cdk provides some convenient helpers for dealing with
the clipboard. See the documentation for more information.

Big thanks to @xkxx for contributing this!

Breaking changes

We no longer have a direct depedency on tslib. Instead it is now listed a peerDependency.
This matches Angular framework.

Users not using the Angular CLI will need to manually install tslib via;

yarn add tslib
# or
npm install tslib --save

material

Deprecations:

  • checkbox: MAT_CHECKBOX_CLICK_ACTION is deprecated, use MAT_CHECKBOX_DEFAULT_OPTIONS
bug fix autocomplete: not picking up indirect descendant option g… (#17510) (f0df308)
bug fix drag-drop: coerce drop list autoScrollDisabled input (#17480) (e2de5e6), closes #17475
bug fix grid-list: not picking up indirect descendant lines (#17530) (044a360)
bug fix list: Do not rely on input binding order (#17501) (4301fb0), closes #17500
bug fix list: selection list option not picking up indirect desce… (#17514) (ee863b2)
bug fix stepper: not picking up indirect descendant elements (#17529) (5f0f2dc)
bug fix tree: not picking up indirect descendant node definitions (#17522) (7f1c2ca)
feature checkbox: add options defaults config (#17473) (3fdab10)
bug fix button-toggle: indirect descendant buttons not picked up… (#17451) (67b009f)
bug fix chips: don't set aria-required when element doesn't have… (#17425) (939c18d), closes #17397
bug fix dialog: don't move focus if it was moved during close ani… (#17300) (3476f51), closes #17296
bug fix drag-drop: global resize subscription not cleared (#17257) (f10b222), closes #17255
bug fix drag-drop: not picking up indirect descendant items (#17226) (ef92091), closes #17047
bug fix drag-drop: only call enterPredicate when pointer is inside drop list (#17310) (9fe32c0), closes #17266
bug fix drag-drop: unable to drop into connected list inside shad… (#17424) (593a06c), closes #16899 #17422
bug fix form-field: annotate base class with Directive for Ivy (#17457) (4663d8f), closes #17022
bug fix form-field: ensure that descendants are picked up in Ivy (#17439) (1d40ec9)
bug fix form-field: outline gap no calculated in shadow dom (#17303) (1b94295), closes #17262
bug fix menu: trigger should aria-controls panel (#17365) (405f5d0)
bug fix schematics: secondary entry point migration not working against v9 (#17452) (5e10833), closes #17433
bug fix select: not picking up indirect descendant option groups (#17458) (d773cce)
bug fix sidenav: container not picking up indirect descendant sid… (#17453) (9933479)
bug fix snack-bar: handle large numbers passed in as duration (#17239) (86a8fee), closes #17234
bug fix tabs: no longer use OnPush (#16529) (35b3226), closes #15440
bug fix tabs: not picking up indirect descendant tabs in ivy (#17346) (ed0067e), closes #17336
bug fix toolbar: not picking up indirect descendant rows (#17469) (646d47f)
feature autocomplete/testing: polish harness API (#17350) ([7a748fc](7a748...
Read more

brocade-arcade

06 Feb 00:59
edb5f8a
Compare
Choose a tag to compare
brocade-arcade Pre-release
Pre-release

material

bug fix form-field: fix underline jank in fill variant (#18406) (351d0c4)
bug fix ng-add: do not overwrite version range specified in ng add (#18365) (06b7378)
bug fix ng-add: support "navigation" in additon to "nav" for navigation schematic (#18364) (06b7378)

youtube-player

bug fix handle API interactions before API has loaded (#18368) (98fac6c), closes #18279

uranium-surfboard

31 Jan 00:45
fd3c31d
Compare
Choose a tag to compare
uranium-surfboard Pre-release
Pre-release

cdk

bug fix a11y: make cdk-high-contrast work w/ emulated view encapsulation (#18152) (aff21e8)

material

bug fix reduce amount of generated high contrast styles (#18332) (b119472)
bug fix checkbox: outline not visible when checked in high contrast mode (#18048) (75a7681)
bug fix chips: set aria-required on chip input (#18098) (05d072a), closes #18049
bug fix datepicker: able to focus disabled datepicker toggle while disabled via click (#18231) (9086a4b)
bug fix drag-drop: error if next sibling is removed after drag sequence has started (#18230) (7a167a2), closes #18205
bug fix drag-drop: not picking up initial disabled state of handle (#16643) (3b28d33), closes #16642
bug fix drag-drop: prevent dragging selected text with the mouse (#18103) (fbbac37)
bug fix expansion: unable to toggle disabled panel via methods (#18181) (796db4d), closes #18171
bug fix input: input harness not matching matNativeControl (#18221) (f0d3a6b)
bug fix overlay: don't reset global overlay alignment when width is 100% and there's a maxWidth (#17842) (37d0191), closes #17841
bug fix overlay: only clear duplicate containers from different platform (#17006) (67d27fd), closes #16851
bug fix schematics: global typography class always being added (#18315) (2b83a0a), closes #17602 #16776
bug fix tabs: better high contrast indication on supported browsers (#18160) (01b31de)
bug fix tabs: don't start auto-scroll when right clicking on buttons (#18033) (ca9b204)

youtube-player

bug fix memory leak if player is destroyed before it is done initializing (#18046) (6b3a271)
bug fix not picking up static startSeconds and endSeconds (#18214) (8ea430f), closes #18212

material-experimental

bug fix errors with latest MDC canary version (#18173) (5d13491)
bug fix mdc-theming and mdc-typography files not published (#18251) (77a25eb)

stone-stallion

16 Jan 22:41
dfa5f40
Compare
Choose a tag to compare
stone-stallion Pre-release
Pre-release

material

bug fix form-field: undeprecated legacy and standard appearances (#18144) (9ea5694)

google-maps

bug fix sub-components throwing during server-side rendering (#18059) (a7f7e9b)

obsidian-elephant

09 Jan 00:08
a744dc3
Compare
Choose a tag to compare
obsidian-elephant Pre-release
Pre-release

material

bug fix chips: avoid accidental form submits when pressing remove button (#18095) (3b4e496)
bug fix datepicker: not respecting form control updateOn: blur for invalid values (#18063) (61029c8), closes #16461
bug fix datepicker: re-render calendar when locale changes (#18094) (be17c25), closes #18087
bug fix form-field: delete top border from focus animation (#17885) (09dc459), closes #17884
bug fix form-field: error when focusing outline form field angular elements on IE/Edge (#18062) (f573072), closes #16095
bug fix scrolling: update virtual scroll viewport size on resize (#18058) (c36466c), closes #16802
bug fix sidenav: move focus into sidenav in side mode if autoFocus enabled explicitly (#17995) (c9856ee), closes #17967
bug fix slide-toggle: fix and simplify high contrast styles (#18104) (2fd862d)
feature grid-list: add test harness (#18001) (5e9ca28)
feature table: add test harness (#17799) (a30094b)

google-maps

bug fix incorrect event name (#18027) (f2cbc06), closes #17845 #18026

material-experimental

bug fix mdc-chips: avoid potential server-side rendering errors (#18044) (17a7bcb)
bug fix mdc-chips: checkmark not visible in high contrast black-on-white mode (#18061) (99af8e9)
bug fix mdc-chips: error on IE and Edge due to unsupported classList (#18074) (5fccd24)
bug fix mdc-chips: prevent default space and enter (#18084) (7b7e633)
bug fix mdc-chips: remove aria-hidden from focusable element (#18054) (55ee988)
bug fix mdc-chips: Set aria-required on input instead of grid (#18049) (22d7f77)
bug fix mdc-chips: removed chip still focusable (#18083) (403377d)
bug fix mdc-slide-toggle: fix extra border in latest canary version (#18035) (b989701)
bug fix mdc-slide-toggle: initial checked and disabled state not reflected visually (#17991) (e746895)
bug fix mdc-slide-toggle: update adapter to match new interface (#18124) (636ae5c)
bug fix mdc-tabs: incorrect tab text color in dark theme (#18068) (86a4ba7)
feature mdc-form-field initial prototype of mdc-form-field (#17903) (697c3a0)

fluoride-floor

19 Dec 22:34
abe9e9c
Compare
Choose a tag to compare
fluoride-floor Pre-release
Pre-release

material

bug fix menu: forward aria attribute to menu panel (#17957) (3299d8c), closes #17952
bug fix chips: fix ripple element opacity when using CSS variable theming (#17576) (e7508ad)
bug fix form-field: deprecate legacy and standard appearances (#17961) (527f1b5)
bug fix chips: clear user agent styles when set on button (#17871) (26e73ac)
bug fix sort: no focus indication for active header (#17735) (191357a), closes #17716
bug fix text-field: correctly check _initialHeight (#17900) (a3e953e)
feature button-toggle: add test harness (#17996) (9a6be0d)
feature core: add test harnesses for mat-option and mat-optgroup (#17940) (0ec499d)
feature paginator: add test harness (#17969) (5a6cdaf)
feature select,input,form-field: move test harnesses out of experimental (#17874) (1c1af58)

youtube-player

bug fix avoid setInterval change detection when player is created (#17894) (27fae29)
bug fix google-maps and youtube-player package missing tslib dependency (#17939) (2a2d837)

google-maps

bug fix google-maps and youtube-player package missing tslib dependency (#17939) (2a2d837)

material-experimental

bug fix mdc-menu: menu item should not inherit parent classname (#17953) (af7aa86)
bug fix mdc-progress-bar: update to latest canary to include adapter changes (#17938) (0753f9e)
feature mdc-list: Add scaffolding for MDC--based list (#17906) (45d34ad)
feature mdc-snackbar: Add demo. (#17895) (3ca7c5a)
feature mdc-table: add MDC styles/classes (#18000) (bb68c7b)
feature mdc-table: add skeleton (#17992) (4169c6f)
feature mdc-table: add tests (#18003) (8796d7c)
bug fix mdc-switch: updated to latest DOM structure guidance (#17905) (5da2ae1)

bastnasite-belief

06 Dec 17:47
81a204e
Compare
Choose a tag to compare
bastnasite-belief Pre-release
Pre-release

cdk

bug fix overlay: add missing transform origin directive input (#17489) (c69a727)
bug fix virtual-scroll: run changeDetection after computing transform (#17727) (d908c9f)
feature overlay: accept PositionStrategy in cdkConnectedOverlay (#16374) (73d1ceb)

material

bug fix bottom-sheet: don't move focus if it was moved during close animation (#17725) (b622d11), closes #17300
bug fix card: add missing card content selectors (#17488) (9b19e6a), closes #17487
bug fix dialog: use view container from config when attaching content (#17819) (656c681), closes #17731
bug fix drag-drop: disabled state not synced on data binding changes (#17330) (ec77513), closes #17325
bug fix drag-drop: position reset if viewport is resized while boundary is invisible (#17777) (f800900), closes #17750
bug fix expansion: accordion picking up headers from descendant accordion during keyboard navigation (#17481) (6c4122c)
bug fix form-field: incorrect assumptions about page direction (#17395) (a6f235d), closes #15415 #17390 #15415 #17390
bug fix input: avoid multiple autosize input listeners with ivy (#17817) (fe151e6)
bug fix list: don't handle selection keys while using typeahead in selection list (#17826) (ad42a1b), closes #17785
bug fix menu: cap maximum elevation for nested menus (#17687) (987c85d)
bug fix menu: internal focus state out of sync if item is focused programmatically (#17762) (af6c13f), closes #17761
bug fix menu: keyboard controls not working if all items are disabled inside lazy content (#17407) (017728a), closes #16572 #17400
bug fix portal: better handling when dom portal content can't be restored (#17851) (2e6045c)
bug fix portal: content not rendered inside outlet when view container is provided (#17731) (6d08240), closes #17650
bug fix select: don't handle open key presses while the user is typing (#17785) (2f17450), closes #17774
bug fix slider: stop dragging if page loses focus (#17849) (3b3c2ca)
bug fix tooltip: theming can affect the tooltip color (#17643) (924494d)
feature badge: add test harness (#17661) (f96e820)
feature bottom-sheet: add test harness (#17618) (a7c3ab0)
feature expansion: add test harness (#17691) (acfa174)
feature list: add test harnesses for list components (#17859) (49b6dbd)
feature sort: add test harness (#17802) (81294f7)

google-maps

bug fix handle trying to access the map before it has been initialized (#17805) (d990243)
bug fix unable to subscribe to events after initialization (#17845) (22fecb3)
feature Add MapPolyline component (#17512) (0c10828)

youtube-player

bug fix avoid clobbering api loaded callback (#17850) (7defaa6)
bug fix clean up internal observables (#17835) (ab0f30d)
performance triggering change detection for unused events (#17665) (61b423a)

material-experimental

bug fix mdc-chips: add checkmark container (#17694) (25c79cd)
bug fix mdc-chips: use ripple target for state interactions (#17681) (7aa522a)
bug fix mdc-tabs: markForCheck on ink bar content input setter (#17561) (71165f1)