Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(material/snack-bar): Switch snack-bar implementation to use MDC #25458

Merged
merged 1 commit into from
Aug 16, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
/src/material/sidenav/** @mmalerba
/src/material/legacy-slide-toggle/** @devversion
/src/material/legacy-slider/** @mmalerba
/src/material/snack-bar/** @andrewseguin @crisbeto
/src/material/legacy-snack-bar/** @andrewseguin @crisbeto
/src/material/sort/** @andrewseguin
/src/material/stepper/** @mmalerba
/src/material/table/** @andrewseguin
Expand Down Expand Up @@ -125,7 +125,7 @@
/src/material-experimental/mdc-progress-spinner/** @andrewseguin
/src/material/progress-bar/** @andrewseguin
/src/material/radio/** @mmalerba
/src/material-experimental/mdc-snack-bar/** @andrewseguin
/src/material/snack-bar/** @andrewseguin
/src/material/slide-toggle/** @crisbeto
/src/material/slider/** @devversion
/src/material/tabs/** @crisbeto
Expand Down Expand Up @@ -344,7 +344,7 @@
/tools/public_api_guard/material/sidenav** @mmalerba
/tools/public_api_guard/material/legacy-slide-toggle** @devversion
/tools/public_api_guard/material/slider** @mmalerba
/tools/public_api_guard/material/snack-bar** @andrewseguin @crisbeto
/tools/public_api_guard/material/legacy-snack-bar** @andrewseguin @crisbeto
/tools/public_api_guard/material/sort** @andrewseguin
/tools/public_api_guard/material/stepper** @mmalerba
/tools/public_api_guard/material/table** @andrewseguin
Expand Down
4 changes: 2 additions & 2 deletions .ng-dev/commit-message.mts
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ export const commitMessage: CommitMessageConfig = {
'material/progress-bar',
'material-experimental/mdc-progress-spinner',
'material/slide-toggle',
'material-experimental/mdc-snack-bar',
'material/snack-bar',
'material-experimental/mdc-table',
'material/tabs',
'material-experimental/menubar',
Expand Down Expand Up @@ -100,7 +100,7 @@ export const commitMessage: CommitMessageConfig = {
'material/legacy-slide-toggle',
'material/slider',
'material/legacy-slider',
'material/snack-bar',
'material/legacy-snack-bar',
'material/sort',
'material/stepper',
'material/table',
Expand Down
2 changes: 1 addition & 1 deletion integration/mdc-migration/golden/src/app/app.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import {MatRadioModule} from '@angular/material-experimental/mdc-radio';
import {MatSelectModule} from '@angular/material-experimental/mdc-select';
import {MatSlideToggleModule} from '@angular/material/slide-toggle';
import {MatSliderModule} from '@angular/material-experimental/mdc-slider';
import {MatSnackBarModule} from '@angular/material/snack-bar';
import {MatSnackBarModule} from '@angular/material/legacy-snack-bar';
import {MatTableModule} from '@angular/material-experimental/mdc-table';
import {MatTabsModule} from '@angular/material/tabs';
import {MatTooltipModule} from '@angular/material-experimental/mdc-tooltip';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import {ComponentFixture, TestBed} from '@angular/core/testing';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {MatSnackBarModule} from '@angular/material/snack-bar';
import {MatSnackBarModule} from '@angular/material/legacy-snack-bar';
import {SnackBarComponent} from './snack-bar.component';

describe('SnackBarComponent', () => {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import {Component} from '@angular/core';
import {MatSnackBar} from '@angular/material/snack-bar';
import {MatSnackBar} from '@angular/material/legacy-snack-bar';

@Component({
selector: 'snack-bar-example',
Expand Down
3 changes: 1 addition & 2 deletions integration/mdc-migration/golden/src/styles.scss
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,7 @@ $sample-project-theme: mat.define-light-theme((
@include mat.slide-toggle-typography($sample-project-theme);
@include mat.mdc-slider-theme($sample-project-theme);
@include mat.mdc-slider-typography($sample-project-theme);
@include mat.mdc-snack-bar-theme($sample-project-theme);
@include mat.mdc-snack-bar-typography($sample-project-theme);
@include mat.snack-bar-typography($sample-project-theme);
@include mat.mdc-table-theme($sample-project-theme);
@include mat.mdc-table-typography($sample-project-theme);
@include mat.tabs-theme($sample-project-theme);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import {MatRadioModule} from '@angular/material/radio';
import {MatSelectModule} from '@angular/material/select';
import {MatSlideToggleModule} from '@angular/material/legacy-slide-toggle';
import {MatSliderModule} from '@angular/material/slider';
import {MatSnackBarModule} from '@angular/material/snack-bar';
import {MatSnackBarModule} from '@angular/material/legacy-snack-bar';
import {MatTableModule} from '@angular/material/table';
import {MatTabsModule} from '@angular/material/legacy-tabs';
import {MatTooltipModule} from '@angular/material/tooltip';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import {ComponentFixture, TestBed} from '@angular/core/testing';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {MatSnackBarModule} from '@angular/material/snack-bar';
import {MatSnackBarModule} from '@angular/material/legacy-snack-bar';
import {SnackBarComponent} from './snack-bar.component';

describe('SnackBarComponent', () => {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import {Component} from '@angular/core';
import {MatSnackBar} from '@angular/material/snack-bar';
import {MatSnackBar} from '@angular/material/legacy-snack-bar';

@Component({
selector: 'snack-bar-example',
Expand Down
2 changes: 1 addition & 1 deletion integration/mdc-migration/sample-project/src/styles.scss
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ $sample-project-theme: mat.define-light-theme((
@include mat.select-theme($sample-project-theme);
@include mat.legacy-slide-toggle-theme($sample-project-theme);
@include mat.slider-theme($sample-project-theme);
@include mat.snack-bar-theme($sample-project-theme);
@include mat.legacy-snack-bar-theme($sample-project-theme);
@include mat.table-theme($sample-project-theme);
@include mat.legacy-tabs-theme($sample-project-theme);
@include mat.tooltip-theme($sample-project-theme);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ ng_module(
"//src/material/legacy-checkbox",
"//src/material/legacy-input",
"//src/material/legacy-list",
"//src/material/snack-bar",
"//src/material/legacy-snack-bar",
"//src/material/table",
"@npm//@angular/common",
"@npm//@angular/forms",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import {MatLegacyCheckboxModule} from '@angular/material/legacy-checkbox';
import {MatIconModule} from '@angular/material/icon';
import {MatLegacyInputModule} from '@angular/material/legacy-input';
import {MatLegacyListModule} from '@angular/material/legacy-list';
import {MatSnackBarModule} from '@angular/material/snack-bar';
import {MatLegacySnackBarModule} from '@angular/material/legacy-snack-bar';
import {MatTableModule} from '@angular/material/table';
import {PopoverEditCellSpanMatTableExample} from './popover-edit-cell-span-mat-table/popover-edit-cell-span-mat-table-example';
import {PopoverEditMatTableFlexExample} from './popover-edit-mat-table-flex/popover-edit-mat-table-flex-example';
Expand Down Expand Up @@ -37,7 +37,7 @@ const EXAMPLES = [
MatLegacyInputModule,
MatLegacyListModule,
MatPopoverEditModule,
MatSnackBarModule,
MatLegacySnackBarModule,
MatTableModule,
FormsModule,
],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import {Component} from '@angular/core';
import {DataSource} from '@angular/cdk/collections';
import {FormValueContainer} from '@angular/cdk-experimental/popover-edit';
import {NgForm} from '@angular/forms';
import {MatSnackBar} from '@angular/material/snack-bar';
import {MatLegacySnackBar} from '@angular/material/legacy-snack-bar';
import {BehaviorSubject, Observable} from 'rxjs';

export type ElementType = 'Metal' | 'Semimetal' | 'Nonmetal';
Expand Down Expand Up @@ -220,7 +220,7 @@ export class PopoverEditMatTableExample {
readonly typeValues = new FormValueContainer<PeriodicElement, any>();
readonly fantasyValues = new FormValueContainer<PeriodicElement, any>();

constructor(private readonly _snackBar: MatSnackBar) {}
constructor(private readonly _snackBar: MatLegacySnackBar) {}

onSubmitName(element: PeriodicElement, f: NgForm) {
if (!f.valid) {
Expand Down
8 changes: 4 additions & 4 deletions src/components-examples/material/snack-bar/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ ng_module(
"//src/material/legacy-button",
"//src/material/legacy-input",
"//src/material/legacy-select",
"//src/material/snack-bar",
"//src/material/snack-bar/testing",
"//src/material/legacy-snack-bar",
"//src/material/legacy-snack-bar/testing",
"@npm//@angular/forms",
"@npm//@angular/platform-browser",
"@npm//@angular/platform-browser-dynamic",
Expand All @@ -43,8 +43,8 @@ ng_test_library(
":snack-bar",
"//src/cdk/testing",
"//src/cdk/testing/testbed",
"//src/material/snack-bar",
"//src/material/snack-bar/testing",
"//src/material/legacy-snack-bar",
"//src/material/legacy-snack-bar/testing",
"@npm//@angular/platform-browser",
"@npm//@angular/platform-browser-dynamic",
],
Expand Down
4 changes: 2 additions & 2 deletions src/components-examples/material/snack-bar/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import {FormsModule} from '@angular/forms';
import {MatLegacyButtonModule} from '@angular/material/legacy-button';
import {MatLegacyInputModule} from '@angular/material/legacy-input';
import {MatLegacySelectModule} from '@angular/material/legacy-select';
import {MatSnackBarModule} from '@angular/material/snack-bar';
import {MatLegacySnackBarModule} from '@angular/material/legacy-snack-bar';
import {
PizzaPartyComponent,
SnackBarComponentExample,
Expand Down Expand Up @@ -33,7 +33,7 @@ const EXAMPLES = [
MatLegacyButtonModule,
MatLegacyInputModule,
MatLegacySelectModule,
MatSnackBarModule,
MatLegacySnackBarModule,
],
declarations: [...EXAMPLES, PizzaPartyComponent],
exports: EXAMPLES,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import {Component} from '@angular/core';
import {MatSnackBar} from '@angular/material/snack-bar';
import {MatLegacySnackBar} from '@angular/material/legacy-snack-bar';

/**
* @title Snack-bar with a custom component
Expand All @@ -12,7 +12,7 @@ import {MatSnackBar} from '@angular/material/snack-bar';
export class SnackBarComponentExample {
durationInSeconds = 5;

constructor(private _snackBar: MatSnackBar) {}
constructor(private _snackBar: MatLegacySnackBar) {}

openSnackBar() {
this._snackBar.openFromComponent(PizzaPartyComponent, {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
import {ComponentFixture, TestBed} from '@angular/core/testing';
import {TestbedHarnessEnvironment} from '@angular/cdk/testing/testbed';
import {MatSnackBarHarness} from '@angular/material/snack-bar/testing';
import {HarnessLoader} from '@angular/cdk/testing';
import {MatSnackBarModule} from '@angular/material/snack-bar';
import {MatLegacySnackBarModule} from '@angular/material/legacy-snack-bar';
import {SnackBarHarnessExample} from './snack-bar-harness-example';
import {NoopAnimationsModule} from '@angular/platform-browser/animations';
import {MatLegacySnackBarHarness} from '@angular/material/legacy-snack-bar/testing';

describe('SnackBarHarnessExample', () => {
let fixture: ComponentFixture<SnackBarHarnessExample>;
let loader: HarnessLoader;

beforeEach(async () => {
await TestBed.configureTestingModule({
imports: [MatSnackBarModule, NoopAnimationsModule],
imports: [MatLegacySnackBarModule, NoopAnimationsModule],
declarations: [SnackBarHarnessExample],
}).compileComponents();
fixture = TestBed.createComponent(SnackBarHarnessExample);
Expand All @@ -22,34 +22,34 @@ describe('SnackBarHarnessExample', () => {

it('should load harness for simple snack-bar', async () => {
const snackBarRef = fixture.componentInstance.open('Hi!', '');
let snackBars = await loader.getAllHarnesses(MatSnackBarHarness);
let snackBars = await loader.getAllHarnesses(MatLegacySnackBarHarness);

expect(snackBars.length).toBe(1);

snackBarRef.dismiss();
snackBars = await loader.getAllHarnesses(MatSnackBarHarness);
snackBars = await loader.getAllHarnesses(MatLegacySnackBarHarness);
expect(snackBars.length).toBe(0);
});

it('should be able to get message of simple snack-bar', async () => {
fixture.componentInstance.open('Subscribed to newsletter.');
let snackBar = await loader.getHarness(MatSnackBarHarness);
let snackBar = await loader.getHarness(MatLegacySnackBarHarness);
expect(await snackBar.getMessage()).toBe('Subscribed to newsletter.');
});

it('should be able to get action description of simple snack-bar', async () => {
fixture.componentInstance.open('Hello', 'Unsubscribe');
let snackBar = await loader.getHarness(MatSnackBarHarness);
let snackBar = await loader.getHarness(MatLegacySnackBarHarness);
expect(await snackBar.getActionDescription()).toBe('Unsubscribe');
});

it('should be able to check whether simple snack-bar has action', async () => {
fixture.componentInstance.open('With action', 'Unsubscribe');
let snackBar = await loader.getHarness(MatSnackBarHarness);
let snackBar = await loader.getHarness(MatLegacySnackBarHarness);
expect(await snackBar.hasAction()).toBe(true);

fixture.componentInstance.open('No action');
snackBar = await loader.getHarness(MatSnackBarHarness);
snackBar = await loader.getHarness(MatLegacySnackBarHarness);
expect(await snackBar.hasAction()).toBe(false);
});
});
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import {Component} from '@angular/core';
import {MatSnackBar, MatSnackBarConfig} from '@angular/material/snack-bar';
import {MatLegacySnackBar, MatLegacySnackBarConfig} from '@angular/material/legacy-snack-bar';

/**
* @title Testing with MatSnackBarHarness
Expand All @@ -9,9 +9,9 @@ import {MatSnackBar, MatSnackBarConfig} from '@angular/material/snack-bar';
templateUrl: 'snack-bar-harness-example.html',
})
export class SnackBarHarnessExample {
constructor(readonly snackBar: MatSnackBar) {}
constructor(readonly snackBar: MatLegacySnackBar) {}

open(message: string, action = '', config?: MatSnackBarConfig) {
open(message: string, action = '', config?: MatLegacySnackBarConfig) {
return this.snackBar.open(message, action, config);
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import {Component} from '@angular/core';
import {MatSnackBar} from '@angular/material/snack-bar';
import {MatLegacySnackBar} from '@angular/material/legacy-snack-bar';

/**
* @title Basic snack-bar
Expand All @@ -10,7 +10,7 @@ import {MatSnackBar} from '@angular/material/snack-bar';
styleUrls: ['snack-bar-overview-example.css'],
})
export class SnackBarOverviewExample {
constructor(private _snackBar: MatSnackBar) {}
constructor(private _snackBar: MatLegacySnackBar) {}

openSnackBar(message: string, action: string) {
this._snackBar.open(message, action);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import {Component} from '@angular/core';
import {
MatSnackBar,
MatSnackBarHorizontalPosition,
MatSnackBarVerticalPosition,
} from '@angular/material/snack-bar';
MatLegacySnackBar,
MatLegacySnackBarHorizontalPosition,
MatLegacySnackBarVerticalPosition,
} from '@angular/material/legacy-snack-bar';

/**
* @title Snack-bar with configurable position
Expand All @@ -14,10 +14,10 @@ import {
styleUrls: ['snack-bar-position-example.css'],
})
export class SnackBarPositionExample {
horizontalPosition: MatSnackBarHorizontalPosition = 'start';
verticalPosition: MatSnackBarVerticalPosition = 'bottom';
horizontalPosition: MatLegacySnackBarHorizontalPosition = 'start';
verticalPosition: MatLegacySnackBarVerticalPosition = 'bottom';

constructor(private _snackBar: MatSnackBar) {}
constructor(private _snackBar: MatLegacySnackBar) {}

openSnackBar() {
this._snackBar.open('Cannonball!!', 'Splash', {
Expand Down
2 changes: 1 addition & 1 deletion src/dev-app/mdc-snack-bar/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ ng_module(
],
deps = [
"//src/cdk/bidi",
"//src/material-experimental/mdc-snack-bar",
"//src/material/button",
"//src/material/checkbox",
"//src/material/form-field",
"//src/material/input",
"//src/material/select",
"//src/material/snack-bar",
"@npm//@angular/forms",
],
)
Expand Down
2 changes: 1 addition & 1 deletion src/dev-app/mdc-snack-bar/mdc-snack-bar-demo.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import {
MatSnackBarHorizontalPosition,
MatSnackBarVerticalPosition,
MatSnackBarModule,
} from '@angular/material-experimental/mdc-snack-bar';
} from '@angular/material/snack-bar';
import {CommonModule} from '@angular/common';
import {FormsModule} from '@angular/forms';
import {MatButtonModule} from '@angular/material/button';
Expand Down
2 changes: 1 addition & 1 deletion src/dev-app/snack-bar/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ ng_module(
"//src/material/legacy-form-field",
"//src/material/legacy-input",
"//src/material/legacy-select",
"//src/material/snack-bar",
"//src/material/legacy-snack-bar",
"@npm//@angular/forms",
],
)
Expand Down