* build: fix missing prebuilt themes
* Fixes that the prebuilt themes are not copied over to the release output.
* Introduces two more checks (specifc for material) in the validate-release task
* Fixes that the generation of the theming SCSS bundle happens outside of gulp.
Fixes#5038
* Logic improvements.
In dark themes the dialog container will have a dark background and the text should therefore have a light text color.
Currently the text color is still dark on a dark background which causes the dialog to look bad in dark themes.
Recently Dgeni switch to a more recent version of TypeScript and now getters and setters are counting as individual members. This causes different properties to show up twice in the API docs.
Fixes this temporary by filtering duplicate member docs. Also removes the inhertied docs processor since it doesn't work and needs some more work in the `dgeni-packages` repository.
Fixes#4923
Removes the Github Status API from Gulp since it's not used anymore and won't be used anymore. The reason is that all API requests to Gtihub will happen from Firebase functions
Sending requests to the Github API from Firebase functions ensures that nobody can leak Github / Access tokens and that we can send API requests for Pull Requests too.
* Recently we moved the inline script to the packaging directory and we cleaned up some logic. At this point the multiple style files inlining broke accidentally.
* We joined the different styles using a comma inside of the inlined stylesheet (while we were trying to create a array). Instead it would be just easier to concatenate the styles using a space.
Fixes the Universal Prerendering task by using the same workaround as for the AOT job (building sources in the output directory already)
Building the sources in the output directory (similar as for the AOT task) is theonly known workaround for https://github.com/angular/angular/issues/12249
* build: move inline resources script to tools
* Moves the inline resources script to the `tools/gulp/packaging` folder. This is necessary when exposing the build tools (e.g for flex-layout)
* This also makes the packaging more clean because no external script is referenced (also switched to TypeScript and improved code)
* Address comments
* Update comment
* In components inline styles there shouldn't be any Sourcemap reference. This adds bloat and also doesn't do anything right now.
* No longer builds sourcemaps for all compiled SCSS. The sourcemaps don't work for development either (styles are inlined too)
* Prebuilt themes no longer contain source-maps.
* build: add dashboard firebase functions
* Adds a new folder for the dashboard project that for now only contains firebase functions.
* The firebase functions will be used to securely make API calls to the Github API (e.g payload status)
* Functions will be automatically deployed as same as screenshot functions.
* Address feedback
This also adds handling for directives with generics, which we have not had before. Dgeni treats this as "members" and they need to be disambiguated from properties.
* build: minify html before inlining resources
* Now minifies the HTML files before inlining the resources. This drops unnecessary whitespace due to previous line breaks and developers can easily test with Material components.
Fixes#1596
* Address comment
* Sometimes the theme SCSS changes are not being reflected in the browser. This is because the demo-app theme is built from the SCSS mixins and those aren't rebuilt whenever CSS changes inside of Material.
The tsconfig for the Screenshot function specifies a non existing `index.ts` file. This leads to errors in the TypeScript project because the source files are not being loaded with the ES2015 library (e.g Promise is undefined)
* build: move server rendering to dist
* Verifying that Material works with `platform-server` now happens in the `dist/` folder (instead of the src/ folder)
* Adds a gulp task to build the universal application. In the future serving the app will be also part of this
* Address comments
Recently with #4787 the tsc generated helpers got replaced with helpers from the `tslib` package.
This means that the generated IIFE statements are different than before and the pure annotations RegExps don't work anymore.
* build: move release packages to constants
* Moves the list of packages that should be released to the constants file.
* Sets the executable bit flag on the `deploy-screenshot-functions.sh` script
* Rename constants to build config
* The Firebase CLI is not able to properly detect the Firebase functions for the screenshot project. This is because the functions are not re-exported.
Changes the `MATERIAL2_FIREBASE_PRIVATE_KEY` to `MATERIAL2_DASHBOARD_FIREBASE_KEY` because it's confusing to just say that its for firebase.
Giving it a more explicit token as same as with the screenshots ensures that we have a structured & clean list of tokens in our CI settings.
* build: move packaging in separate folder
Moves all related packaging code into a `packaging` folder inside of gulp.
At some point we can move the folder completely to `tools/` and can share it with other repositories like `flex-layout`.
* Split up build utils
* The transpiled prebuilt themes include references to sourcemaps. Those sourcemaps don't exist in releases and developers might get warnings.
Fixes#4299
* build: script to build demo-app for firebase
* Adds a new gulp task that can be used to build the devapp in "deploy"-mode. This allows us to deploy the demo-app on firebase.
Fixes#3857
* Add firebase deploy task
* feat(observe-content): add debounce option and other improvements
* Adds a reusable utility for debouncing a function.
* Adds the ability to debounce the changes from the `cdkObserveContent` directive.
* Makes the `cdkObserveContent` directive pass back the `MutationRecord` to the `EventEmitter`.
* Fires the callback once per mutation event, instead of once per `MutationRecord`.
Relates to #2372.
* Remove flaky tests.
* Stub out the MutationObserver.
* refactor: use debounce logic from rxjs
* chore: fix lint error
* fix: refactor the MutationObserver token to not break AoT