Commit Graph

106 Commits

Author SHA1 Message Date
tinayuangao c975ca8746 feat(tree): merge tree branch to master (#9796) 2018-02-22 08:15:02 -08:00
Joey Perrott 8473a410ee chore: remove IE11 from saucelab tests (#10047) 2018-02-20 12:16:24 -08:00
Austin c98d217dfe feat(badge): add badge component (#7483) 2018-02-13 07:55:21 -08:00
Kristiyan Kostadinov c3b84659c8 build: fix runtime errors not being logged out on karma initialization (#9888)
Currently if something throws an error right after Karma has initialized, the log will look something like the following:

```
HeadlessChrome 0.0.0 (Windows 10 0.0.0) ERROR
  {
    "originalErr": {},
    "__zone_symbol__currentTask": {
      "type": "microTask",
      "state": "notScheduled",
      "source": "Promise.then",
      "zone": "<root>",
      "cancelFn": null,
      "runCount": 0
    }
  }
```

These changes log out the stack trace explicitly so we have some more info to work with if it happens.
2018-02-13 07:51:35 -08:00
Jeremy Elbourn 21a83bae8d chore: add bazel test rules for the cdk (#9726)
This adds bazel test rules for everything under cdk/ and sets CircleCI Overlay tests don't work because there's not yet a way to pass through flags to the browser. These issues will be addressed in a follow-up PR.
2018-02-12 16:01:00 -08:00
Kristiyan Kostadinov bbf62cdd6c feat: add bottom sheet component (#9764)
* Adds an initial implementation of the new `MatBottomSheet` service that allows users to display component-based or template-based bottom sheets.
* Sets up the various boilerplate and infrastructure necessary for a new component.

Note: this is an initial implementation that has the necessary functionality, styles and accessibility. More docs, examples and touch gestures will be added in a follow-up.
2018-02-06 09:31:11 -08:00
Paul Gschwendtner 33afd93198 build: remove chrome sandbox workaround (#9498)
In order to align with the `angular/angular` setup, we also remove the temporary Chrome Headless Sandbox workaround in favor of faster Travis CI containers. To be able to still use headless chrome, we specify the `no-sandbox` flag.

Reference https://github.com/angular/angular/pull/21641
2018-01-22 09:46:11 -08:00
CaerusKaru bd0ec64932 feat(divider): move divider out of mat-list (#5862) 2017-12-21 11:32:00 -08:00
Joey Perrott 1121d53af7 chore: create cdk-experimental package (#9059) 2017-12-19 16:45:54 -08:00
Paul Gschwendtner 71305ce8f6 build: add material experimental package (#8591)
* Adds the material-experimental package.
2017-11-29 13:46:04 -08:00
Paul Gschwendtner a0075fff4c build: run tests in chrome headless local (#8651)
Runs local tests in Chrome Headless. This speeds up the tests and also ensures more test stability. On Windows there are a lot of pixel deviation failures because the tests seemed to be affected by the screen resolution or window frame.

By running the tests headless, the Chrome launcher has more control about the rendering and pixel deviations like before won't happen anymore. It's still the same Chrome that runs, just that the screen is kind of emulated like in XVFB.
2017-11-28 10:34:39 -08:00
Paul Gschwendtner 8009f1bf11 chore: update chromedriver version for e2e tests (#8635)
* No longer explicitly specifies the Chrome Driver version for the e2e tests. The chrome driver associated with the latest Chrome version will be used now.
2017-11-28 10:34:07 -08:00
Kristiyan Kostadinov de8c6e2881 fix: import individual rx operators (#8160)
After the switch to lettable operators, we had started importing all operators via `rxjs/operators`. These changes switch us back to only importing the individual ones and add some linting so it doesn't happen in the future.
2017-10-31 16:05:10 -07:00
Kristiyan Kostadinov f29da63583 feat: update to rxjs 5.5.0 and switch to lettable operators (#7276)
Bumps the required RxJS version to 5.5.0 and gets rid of our RxChain in favor of using the lettable Rx operators. Refactors all the usages and updates the configs.

Fixes #7275.
2017-10-28 09:37:43 -07:00
Kristiyan Kostadinov 0ea43700ef refactor: switch to HttpClient (#6702)
Refactors all of the usages of the deprecated `Http` by replacing them with the `HttpClient`.

BREAKING CHANGE: Material now requires `@angular/common` instead of `@angular/http` and uses `HttpClient` instead of `Http`.
2017-10-24 10:42:35 -07:00
Paul Gschwendtner fe08c2b74b build: run tests with firefox headless (#7828) 2017-10-18 16:11:36 -07:00
Paul Gschwendtner 0ab6ebeef1 build: run tests against ios10 (#7707) 2017-10-12 14:40:06 -07:00
Paul Gschwendtner 7f274b4688 build: create coverage reports in chrome (#7714)
* No longer creates the coverage reports inside of Browserstack. The reports can be generated inside of Chrome Headless that doesn't run remotely on BrowserStack or Saucelabs.
2017-10-12 14:39:52 -07:00
Joey Perrott 4d04472d3f chore(accordion): move CdkAccordion to @angular/cdk (#7530)
* Move UniqueSelectionDispatcher to CDK.

BREAKING CHANGE: UniqueSelectionDispatcher, UniqueSelectionDispatcherListener and UNIQUE_SELECTION_DISPATCHER_PROVIDER are no longer
available from @angular/material and instead must be imported from @angular/cdk/collections

* Move UniqueSelectionDispatcher to CDK.

BREAKING CHANGE: UniqueSelectionDispatcher, UniqueSelectionDispatcherListener and UNIQUE_SELECTION_DISPATCHER_PROVIDER are no longer
available from @angular/material and instead must be imported from @angular/cdk/collections

* Move CdkAccordion to @angular/cdk/accordion

BREAKING CHANGE:
  - CdkAccordion is now in @angular/cdk/accordion
  - AccordionChild is renamed to CdkAccordionChild
  - CdkAccordion no longer has displayMode and hideToggle @Inputs
  - CdkAccordionItem is now a @Directive
  - CdkAccordion is now exportedAs CdkAccordion for template referencing
  - CdkAccordionItem is now exported as CdkAccordionItem for template referencing
2017-10-11 22:18:54 -07:00
Kara f3b0b54ee6 build(): fix source maps (#7403) 2017-10-02 17:13:20 -07:00
mmalerba 8b715e00bf chore: fix demo app build (#7428) 2017-09-29 16:12:13 -07:00
Andrew Seguin 20a23f16e8 fix: remove all md prefixes (#7241) 2017-09-28 13:45:03 -07:00
Jeremy Elbourn 1cb8907a66 build: create JS bundles for each component (#6998)
Before this change, all of `@angular/material` was bundled into a
single, flat JS file.

After this change, each top-level component (i.e., each directory under
`src/lib`) will be have its own JS file (and d.ts and metadata.json).

The benefit of this change is that current versions of webpack will be
able to do a much better job of only including the code an app is using.

It also allows (but does not require) people to explicitly import from specific components,
e.g.
```
import {MdButtonModule} from '@angular/material/button';
``

For development _within Angular Material itself_ we have to use these
deeper imports because the root `@angular/material` doesn't exist until
we build the relase package.

Additionally, this PR adds a `tsconfig.json` for each dir under `src/`
with the correct path mappings for that directory, so that IDEs will
correctly generate imports.

Closure Compiler CI check is also disabled by this PR; it cannot work
with the new package structure until a release with
https://github.com/google/closure-compiler/pull/2600 is made available.
2017-09-14 15:15:17 -07:00
mmalerba 9545427c73 feat(datepicker): Add Moment.js adapter (#6860)
* create moment adapter

* add Moment to karma.conf.js

* use MAT_DATE_LOCALE

* tests are now running

* add in tests

* WIP: demo

* add synthetic default imports for moment

* add locale switching to demo

* fix moment import issues with tests

* fix aot

* address comments

* fix closure issue

* add additional explanation of rollup issue

* remove moment adapter demo since it is preventing sync into g3 (will add
back as a docs example in future PR).

* fix bad rebase
2017-09-12 13:24:23 -07:00
Ji Won Shin 87318bc7c8 feat(stepper): initial version of stepper (#6594) 2017-08-31 15:26:05 -07:00
Paul Gschwendtner eef28c0153 build: disable browserstack video (#6622) 2017-08-24 10:10:06 -07:00
Jeremy Elbourn 0f6a2ecb3d feat(cdk): move cdkScrollable, ScrollDispatcher, and ViewportRuler out of overlay (#6547) 2017-08-22 17:46:09 -07:00
Andrew Seguin c90ca55ef3 chore(cdk): create cdk/collections (#6208) 2017-08-22 17:45:40 -07:00
Jeremy Elbourn 4d82f833c7 feat(cdk): move overlay into cdk (#6100) 2017-08-11 15:42:36 -07:00
Jeremy Elbourn 9df292fba8 feat: rename cdk/keyboard -> keycodes & cdk/observe-content -> observers (#6039) 2017-08-08 23:19:32 -07:00
Jeremy Elbourn bcae614d79 build: change cdk to use secondary entry-points (#5922)
* build: change cdk to use secondary entry-points

* refactoring for comments

* fix closure and payload size calc
2017-07-25 16:15:24 -07:00
Jeremy Elbourn 1e41b04540 chore: disable random test order (#5770) 2017-07-14 13:09:27 -07:00
Paul Gschwendtner 95590613cc build: randomize execution order of tests (#5425)
* Randomizes the order of test execution inside of Jasmine / Karma.
2017-07-06 15:50:05 -07:00
Paul Gschwendtner 8de3b98935 refactor: move testing utilities to cdk (#5437)
* Deletes the duplicate testing utilities because #5386 just copied them to the CDK but didn't delete the old files.
* Introduces a secondary entry point (only inside of development right now) that allows us to use the testing utilities from the Material package tests
2017-07-06 15:46:29 -07:00
Paul Gschwendtner 17cc4a198f chore: move coercing to cdk package (#5025) 2017-06-22 13:54:51 -07:00
Paul Gschwendtner 154f54ec14 build: run chrome headless in travis (#5126) 2017-06-14 14:26:52 -07:00
Paul Gschwendtner b3c75bb4b0 build: run fewer browsers on saucelabs (#5045) 2017-06-12 13:37:16 -07:00
Paul Gschwendtner 3eb7bdd792 build: duplicate update of jasmine timeout interval (#5085) 2017-06-12 10:52:33 -07:00
Kristiyan Kostadinov 8e6bee8116 chore: reorganize e2e test files (#5032)
* Renames the e2e test file to match the pattern of `{{component}}-e2e.spec.ts`.
* Flattens the directory structure in the `e2e` directory. Having a separate dir for each component was overkill since only have one file per component.
* Fixes some inconsistent code styles in the Protractor config.

Fixes #5030.
2017-06-09 16:09:08 -07:00
Paul Gschwendtner 21f764c347 build: report ngOnDestroy exceptions in unti tests (#5036)
Monkey-patches TestBed.resetTestingModule such that any errors that occur during component destruction are thrown instead of silently logged. Also runs TestBed.resetTestingModule after each unit test.

 Without this patch, the combination of two behaviors is problematic for Angular Material:
 - TestBed.resetTestingModule catches errors thrown on fixture destruction and logs them without the errors ever being thrown. This means that any component errors that occur in ngOnDestroy can encounter errors silently and still pass unit tests.
 - TestBed.resetTestingModule is only called *before* a test is run, meaning that even *if* the aforementioned errors were thrown, they would be reported for the wrong test (the test that's about to start, not the test that just finished).
2017-06-09 16:09:02 -07:00
Kristiyan Kostadinov 6601e3d873 build: fix 404s when debugging unit tests (#4965)
* Fixes a bunch of 404s that were being logged when debugging unit tests. It was because we're not serving the source maps for RxJS and Hammer.
* Removes a few redundant options from the Karma config, because they're the same as the defaults.
2017-06-05 14:48:42 -07:00
Paul Gschwendtner 32c3ef4a69 build: faster building of tests (#4509) 2017-05-12 14:30:12 -07:00
Paul Gschwendtner a7ca7c1f24 build: build cdk package (#4111)
* Introduces another package called `@angular/cdk`. This package is
currently empty but all the logic for SASS, HTML, TypeScript and tests
is ready.
2017-04-17 15:18:16 -07:00
Paul Gschwendtner 3545df7c4f build: fix karma pattern warnings (#4057)
* Fixes the karma pattern warnings. Those showed up because there was a pattern that included all files (and watched them).
2017-04-12 14:19:14 -07:00
Jeremy Elbourn e7a4a03d68 fix: use correct access tokens for artifact publishing (#3860) 2017-04-01 02:51:22 +08:00
Jeremy Elbourn 71229756a5 build: update packaging to match angular/angular (#3751)
* build: restructure release output

* build: inline metadata.json resources

* build: output re-export meatadata.json file in package root
2017-03-24 14:06:45 -07:00
Paul Gschwendtner 4d4a63e641 fix: coverage issue with saucelabs (#3540)
* Saucelabs seems to have issues with Edge and the `karma-coverage` plugin.

* Running on Browserstack seems to be work without any flakiness and also makes the build faster (runs less browsers than on saucelabs)
2017-03-10 10:41:49 -08:00
Paul Gschwendtner 23ee63393f build: fix karma console log (#3484)
Karma recently introduced a breaking change, that **hasn't** been noted (https://github.com/karma-runner/karma/issues/2582).

Karma doesn't show any `console.log` calls anymore, because the priority order of the `LogLevel`'s has been changed. The default log leve for the `browserConsoleLog` does no longer include the `LOG` log-level.
2017-03-10 10:39:01 -08:00
Paul Gschwendtner bbe9519535 build: upload coverage to firebase (#3435)
* Introduces a gulp task that will run on Travis Push builds and will upload coverage results to a Firebase database.

Closes #128.
2017-03-08 18:09:57 -08:00
Paul Gschwendtner 478a2e4269 chore(focus-classes): fix failing tests when browser is blurred (#2935)
* chore(focus-classes): fix failing tests when browser is blurred

On Saucelabs, browsers will run simultaneously and therefore can't focus all browser windows at the same time.
This is problematic when testing focus states. Chrome and Firefoxonly fire FocusEvents when the window is focused. This issue also appears locally.

Fixes #2903.

* Extract patch logic into extra function
2017-02-09 07:02:24 +08:00