mirror of
https://github.com/angular/angular.git
synced 2026-09-14 13:54:52 +08:00
3e17ce7930
* 3.1. Add MDC to deps Adds MDC as a peer dependency and updates various build and test config files accordingly. * 3.2. Add the new component skeleton Adds files for MDC-based MatCheckbox. * 3.3. Add a demo for the new component Adds a demo of the MDC-based MatCheckbox at http://localhost:4200/mdc-checkbox. * 3.4. Copy in the canonical MDC DOM and add the MDC styles Adds the MDCCheckbox DOM and styles to the MDC-based MatCheckbox. * 3.5. Set up the MDC foundation Adds the MDCCheckboxFoundation and MDCFormFieldFoundation and translates the lifecycle setup from their respective components (https://github.com/material-components/material-components-web/blob/master/packages/mdc-checkbox/component.ts and https://github.com/material-components/material-components-web/blob/master/packages/mdc-form-field/component.ts) into our MDC-based MatCheckbox. * 3.6. Add a custom MDC adapter Adds an Angular adapter for MDCCheckboxFoundation and MDCFormFieldFoundation * 3.7. Fill in the missing APIs to match the API of the existing Angular Material component Fills in the remaining APIs on the MDC-based MatCheckbox. * 3.8. Copy over the existing demo page to the MDC-based demo Copies over the demo page for the existing MatCheckbox to the demo page for the MDC-based MatCheckbox. Also adds an additional demo to both pages. * 4.1. Manual inspection and testing Adds ripple using RippleRenderer which results in a smaller size than MatRipple or MDCRipple. Also adds support for disabling animations. * 4.2. Copy over unit tests and update them Copies over all of the tests from the existing MatCheckbox and fixes issues that were uncovered by the tests. * 4.3. Copy over e2e tests if any exist Adds MDC-based MatCheckbox to the e2e app and copies over the tests for the existing MatCheckbox. * 4.4. Add MDC-based component to universal-app Adds a couple examples of the MDC-based MatCheckbox to the universal app. * 5.2. Investigate and fix size regressions Removes usgaes of constants from `MDCRippleFoundation`. It looks like their use was preventing the class from being tree-shaken. Results after removing the constants show that the MDC-based implementation is 3kb smaller: https://github.com/mmalerba/mdc-size-comparison/blob/ee1b73a181c4a23345251656df23574140a747c0/results/size-summary.txt * 8. Add user documentation Adds documentation explaining what this component is and how to experiment with it in your app. * 9.2. Address CI failures and reviewer feedback Fixes unit tests in Edge and approves the new API goldens for checkbox.
97 lines
3.5 KiB
JSON
97 lines
3.5 KiB
JSON
{
|
|
"plugins": [
|
|
"./tools/stylelint/no-prefixes/no-prefixes.js",
|
|
"./tools/stylelint/no-ampersand-beyond-selector-start/index.js",
|
|
"./tools/stylelint/selector-no-deep/index.js",
|
|
"./tools/stylelint/no-nested-mixin/index.js",
|
|
"./tools/stylelint/no-concrete-rules/index.js",
|
|
"./tools/stylelint/no-top-level-ampersand-in-mixin/index.js"
|
|
],
|
|
"rules": {
|
|
"material/no-prefixes": [true, {
|
|
"browsers": ["last 2 versions", "not ie <= 10", "not ie_mob <= 10"],
|
|
"filePattern": "**/!(*-example.css)"
|
|
}],
|
|
"material/selector-no-deep": true,
|
|
"material/no-nested-mixin": true,
|
|
"material/no-ampersand-beyond-selector-start": [true, {
|
|
"filePattern": "-theme\\.scss$"
|
|
}],
|
|
"material/no-concrete-rules": [true, {
|
|
"filePattern": "^_.*\\.scss$"
|
|
}],
|
|
"material/no-top-level-ampersand-in-mixin": [true, {
|
|
"filePattern": "-theme\\.scss$"
|
|
}],
|
|
|
|
"color-hex-case": "lower",
|
|
"color-no-invalid-hex": true,
|
|
|
|
"function-calc-no-unspaced-operator": true,
|
|
"function-comma-space-after": "always-single-line",
|
|
"function-comma-space-before": "never",
|
|
"function-name-case": "lower",
|
|
"function-url-quotes": "always",
|
|
"function-url-scheme-blacklist": ["data"],
|
|
"function-whitespace-after": "always",
|
|
|
|
"number-leading-zero": "always",
|
|
"number-no-trailing-zeros": true,
|
|
"length-zero-no-unit": true,
|
|
|
|
"string-no-newline": true,
|
|
"string-quotes": "single",
|
|
|
|
"unit-case": "lower",
|
|
"unit-no-unknown": true,
|
|
"unit-whitelist": ["px", "%", "deg", "ms", "em", "vh", "vw", "vmin"],
|
|
|
|
"value-list-comma-space-after": "always-single-line",
|
|
"value-list-comma-space-before": "never",
|
|
|
|
"shorthand-property-no-redundant-values": true,
|
|
|
|
"property-case": "lower",
|
|
"no-duplicate-at-import-rules": true,
|
|
|
|
"declaration-block-no-duplicate-properties": [true, {
|
|
"ignore": ["consecutive-duplicates-with-different-values"]
|
|
}],
|
|
"declaration-block-trailing-semicolon": "always",
|
|
"declaration-block-single-line-max-declarations": 1,
|
|
"declaration-block-semicolon-space-before": "never",
|
|
"declaration-block-semicolon-space-after": "always-single-line",
|
|
"declaration-block-semicolon-newline-before": "never-multi-line",
|
|
"declaration-block-semicolon-newline-after": "always-multi-line",
|
|
"declaration-property-value-blacklist": [
|
|
{"/.*/": ["initial"]},
|
|
{"message": "The `initial` value is not supported in IE."}
|
|
],
|
|
|
|
"block-closing-brace-newline-after": "always",
|
|
"block-closing-brace-newline-before": "always-multi-line",
|
|
"block-opening-brace-newline-after": "always-multi-line",
|
|
"block-opening-brace-space-before": "always-multi-line",
|
|
|
|
"selector-attribute-brackets-space-inside": "never",
|
|
"selector-attribute-operator-space-after": "never",
|
|
"selector-attribute-operator-space-before": "never",
|
|
"selector-combinator-space-after": "always",
|
|
"selector-combinator-space-before": "always",
|
|
"selector-pseudo-class-case": "lower",
|
|
"selector-pseudo-class-parentheses-space-inside": "never",
|
|
"selector-pseudo-element-case": "lower",
|
|
"selector-pseudo-element-colon-notation": "double",
|
|
"selector-pseudo-element-no-unknown": true,
|
|
"selector-type-case": "lower",
|
|
"selector-max-id": 0,
|
|
"no-missing-end-of-source-newline": true,
|
|
"no-eol-whitespace": true,
|
|
"max-line-length": 100,
|
|
"linebreaks": "unix",
|
|
"selector-class-pattern": ["^_?(mat-|cdk-|example-|demo-|ng-|mdc-)", {
|
|
"resolveNestedSelectors": true
|
|
}]
|
|
}
|
|
}
|