@angular/cdk 8.0.0-rc.2 → 8.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/a11y/typings/aria-describer/aria-describer.d.ts +4 -3
- package/a11y/typings/index.metadata.json +1 -1
- package/bundles/cdk-a11y.umd.js +42 -10
- package/bundles/cdk-a11y.umd.js.map +1 -1
- package/bundles/cdk-a11y.umd.min.js +1 -1
- package/bundles/cdk-a11y.umd.min.js.map +1 -1
- package/bundles/cdk-drag-drop.umd.js +532 -87
- package/bundles/cdk-drag-drop.umd.js.map +1 -1
- package/bundles/cdk-drag-drop.umd.min.js +2 -2
- package/bundles/cdk-drag-drop.umd.min.js.map +1 -1
- package/bundles/cdk-layout.umd.js +5 -1
- package/bundles/cdk-layout.umd.js.map +1 -1
- package/bundles/cdk-layout.umd.min.js +1 -1
- package/bundles/cdk-layout.umd.min.js.map +1 -1
- package/bundles/cdk-overlay.umd.js +31 -23
- package/bundles/cdk-overlay.umd.js.map +1 -1
- package/bundles/cdk-overlay.umd.min.js +2 -2
- package/bundles/cdk-overlay.umd.min.js.map +1 -1
- package/bundles/cdk-scrolling.umd.js +6 -7
- package/bundles/cdk-scrolling.umd.js.map +1 -1
- package/bundles/cdk-scrolling.umd.min.js +1 -1
- package/bundles/cdk-scrolling.umd.min.js.map +1 -1
- package/bundles/cdk-tree.umd.js +8 -6
- package/bundles/cdk-tree.umd.js.map +1 -1
- package/bundles/cdk-tree.umd.min.js +1 -1
- package/bundles/cdk-tree.umd.min.js.map +1 -1
- package/bundles/cdk.umd.js +1 -1
- package/bundles/cdk.umd.js.map +1 -1
- package/bundles/cdk.umd.min.js +1 -1
- package/bundles/cdk.umd.min.js.map +1 -1
- package/drag-drop/typings/directives/drag.d.ts +1 -1
- package/drag-drop/typings/directives/drop-list.d.ts +2 -0
- package/drag-drop/typings/drag-drop-registry.d.ts +2 -0
- package/drag-drop/typings/drag-ref.d.ts +10 -1
- package/drag-drop/typings/drop-list-ref.d.ts +59 -3
- package/drag-drop/typings/index.metadata.json +1 -1
- package/esm2015/a11y.js +35 -10
- package/esm2015/a11y.js.map +1 -1
- package/esm2015/cdk.js +1 -1
- package/esm2015/cdk.js.map +1 -1
- package/esm2015/drag-drop.js +467 -85
- package/esm2015/drag-drop.js.map +1 -1
- package/esm2015/layout.js +7 -3
- package/esm2015/layout.js.map +1 -1
- package/esm2015/overlay.js +31 -23
- package/esm2015/overlay.js.map +1 -1
- package/esm2015/scrolling.js +6 -7
- package/esm2015/scrolling.js.map +1 -1
- package/esm2015/tree.js +7 -6
- package/esm2015/tree.js.map +1 -1
- package/esm5/a11y.es5.js +42 -10
- package/esm5/a11y.es5.js.map +1 -1
- package/esm5/cdk.es5.js +1 -1
- package/esm5/cdk.es5.js.map +1 -1
- package/esm5/drag-drop.es5.js +530 -85
- package/esm5/drag-drop.es5.js.map +1 -1
- package/esm5/layout.es5.js +7 -3
- package/esm5/layout.es5.js.map +1 -1
- package/esm5/overlay.es5.js +32 -24
- package/esm5/overlay.es5.js.map +1 -1
- package/esm5/scrolling.es5.js +6 -7
- package/esm5/scrolling.es5.js.map +1 -1
- package/esm5/tree.es5.js +8 -6
- package/esm5/tree.es5.js.map +1 -1
- package/overlay/typings/index.metadata.json +1 -1
- package/overlay/typings/overlay-ref.d.ts +1 -0
- package/package.json +4 -4
- package/schematics/index.d.ts +1 -0
- package/schematics/index.js +1 -0
- package/schematics/index.js.map +1 -1
- package/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/{__name@dasherize__.component.__style__ → __name@dasherize__.component.__style__.template} +0 -0
- package/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/{__name@dasherize__.component.html → __name@dasherize__.component.html.template} +0 -0
- package/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/{__name@dasherize__.component.spec.ts → __name@dasherize__.component.spec.ts.template} +0 -0
- package/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/{__name@dasherize__.component.ts → __name@dasherize__.component.ts.template} +0 -0
- package/schematics/ng-generate/drag-drop/index.js +2 -2
- package/schematics/ng-generate/drag-drop/index.js.map +1 -1
- package/schematics/ng-update/data/attribute-selectors.d.ts +1 -1
- package/schematics/ng-update/data/attribute-selectors.js +5 -13
- package/schematics/ng-update/data/attribute-selectors.js.map +1 -1
- package/schematics/ng-update/data/class-names.d.ts +1 -1
- package/schematics/ng-update/data/class-names.js +5 -21
- package/schematics/ng-update/data/class-names.js.map +1 -1
- package/schematics/ng-update/data/constructor-checks.d.ts +1 -1
- package/schematics/ng-update/data/constructor-checks.js +3 -5
- package/schematics/ng-update/data/constructor-checks.js.map +1 -1
- package/schematics/ng-update/data/css-selectors.d.ts +1 -1
- package/schematics/ng-update/data/css-selectors.js +1 -1
- package/schematics/ng-update/data/css-selectors.js.map +1 -1
- package/schematics/ng-update/data/element-selectors.d.ts +1 -1
- package/schematics/ng-update/data/element-selectors.js +1 -1
- package/schematics/ng-update/data/element-selectors.js.map +1 -1
- package/schematics/ng-update/data/input-names.d.ts +1 -1
- package/schematics/ng-update/data/input-names.js +13 -37
- package/schematics/ng-update/data/input-names.js.map +1 -1
- package/schematics/ng-update/data/method-call-checks.d.ts +1 -1
- package/schematics/ng-update/data/method-call-checks.js +6 -15
- package/schematics/ng-update/data/method-call-checks.js.map +1 -1
- package/schematics/ng-update/data/output-names.d.ts +1 -1
- package/schematics/ng-update/data/output-names.js +1 -1
- package/schematics/ng-update/data/output-names.js.map +1 -1
- package/schematics/ng-update/data/property-names.d.ts +1 -1
- package/schematics/ng-update/data/property-names.js +19 -59
- package/schematics/ng-update/data/property-names.js.map +1 -1
- package/schematics/ng-update/html-parsing/elements.js.map +1 -1
- package/schematics/ng-update/index.d.ts +0 -2
- package/schematics/ng-update/index.js +13 -24
- package/schematics/ng-update/index.js.map +1 -1
- package/schematics/ng-update/public-api.d.ts +0 -5
- package/schematics/ng-update/public-api.js +0 -5
- package/schematics/ng-update/public-api.js.map +1 -1
- package/schematics/ng-update/typescript/base-types.js.map +1 -1
- package/schematics/ng-update/typescript/module-specifiers.js.map +1 -1
- package/schematics/ng-update/upgrade-data.d.ts +5 -30
- package/schematics/ng-update/upgrade-data.js +4 -34
- package/schematics/ng-update/upgrade-data.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/attribute-selectors-rule.d.ts +25 -0
- package/schematics/ng-update/upgrade-rules/attribute-selectors-rule.js +66 -0
- package/schematics/ng-update/upgrade-rules/attribute-selectors-rule.js.map +1 -0
- package/schematics/ng-update/upgrade-rules/class-inheritance-rule.d.ts +26 -0
- package/schematics/ng-update/upgrade-rules/{class-inheritance/classInheritanceCheckRule.js → class-inheritance-rule.js} +24 -20
- package/schematics/ng-update/upgrade-rules/class-inheritance-rule.js.map +1 -0
- package/{typings/schematics/ng-update/upgrade-rules/class-names/classNamesIdentifierRule.d.ts → schematics/ng-update/upgrade-rules/class-names-rule.d.ts} +7 -7
- package/schematics/ng-update/upgrade-rules/{class-names/classNamesIdentifierRule.js → class-names-rule.js} +19 -24
- package/schematics/ng-update/upgrade-rules/class-names-rule.js.map +1 -0
- package/schematics/ng-update/upgrade-rules/constructor-signature-rule.d.ts +29 -0
- package/schematics/ng-update/upgrade-rules/constructor-signature-rule.js +134 -0
- package/schematics/ng-update/upgrade-rules/constructor-signature-rule.js.map +1 -0
- package/schematics/ng-update/upgrade-rules/css-selectors-rule.d.ts +25 -0
- package/schematics/ng-update/upgrade-rules/css-selectors-rule.js +73 -0
- package/schematics/ng-update/upgrade-rules/css-selectors-rule.js.map +1 -0
- package/schematics/ng-update/upgrade-rules/element-selectors-rule.d.ts +25 -0
- package/schematics/ng-update/upgrade-rules/element-selectors-rule.js +64 -0
- package/schematics/ng-update/upgrade-rules/element-selectors-rule.js.map +1 -0
- package/schematics/ng-update/upgrade-rules/index.d.ts +13 -4
- package/schematics/ng-update/upgrade-rules/index.js +49 -29
- package/schematics/ng-update/upgrade-rules/index.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/input-names-rule.d.ts +26 -0
- package/schematics/ng-update/upgrade-rules/input-names-rule.js +59 -0
- package/schematics/ng-update/upgrade-rules/input-names-rule.js.map +1 -0
- package/schematics/ng-update/upgrade-rules/{signature-check/methodCallsCheckRule.d.ts → method-call-arguments-rule.d.ts} +8 -9
- package/schematics/ng-update/upgrade-rules/method-call-arguments-rule.js +60 -0
- package/schematics/ng-update/upgrade-rules/method-call-arguments-rule.js.map +1 -0
- package/schematics/ng-update/upgrade-rules/misc-template-rule.d.ts +18 -0
- package/schematics/ng-update/upgrade-rules/misc-template-rule.js +37 -0
- package/schematics/ng-update/upgrade-rules/misc-template-rule.js.map +1 -0
- package/schematics/ng-update/upgrade-rules/output-names-rule.d.ts +22 -0
- package/schematics/ng-update/upgrade-rules/output-names-rule.js +46 -0
- package/schematics/ng-update/upgrade-rules/output-names-rule.js.map +1 -0
- package/schematics/ng-update/upgrade-rules/property-names-rule.d.ts +22 -0
- package/schematics/ng-update/upgrade-rules/property-names-rule.js +46 -0
- package/schematics/ng-update/upgrade-rules/property-names-rule.js.map +1 -0
- package/schematics/tsconfig.tsbuildinfo +2896 -3609
- package/schematics/update-tool/component-resource-collector.d.ts +41 -0
- package/schematics/update-tool/component-resource-collector.js +141 -0
- package/schematics/update-tool/component-resource-collector.js.map +1 -0
- package/schematics/update-tool/index.d.ts +13 -0
- package/schematics/update-tool/index.js +117 -0
- package/schematics/update-tool/index.js.map +1 -0
- package/schematics/update-tool/migration-rule.d.ts +45 -0
- package/schematics/update-tool/migration-rule.js +50 -0
- package/schematics/update-tool/migration-rule.js.map +1 -0
- package/schematics/update-tool/public-api.d.ts +12 -0
- package/schematics/update-tool/public-api.js +18 -0
- package/schematics/update-tool/public-api.js.map +1 -0
- package/schematics/{ng-update → update-tool}/target-version.d.ts +3 -3
- package/schematics/{ng-update → update-tool}/target-version.js +3 -3
- package/schematics/update-tool/target-version.js.map +1 -0
- package/schematics/update-tool/utils/decorators.d.ts +23 -0
- package/schematics/update-tool/utils/decorators.js +37 -0
- package/schematics/update-tool/utils/decorators.js.map +1 -0
- package/schematics/update-tool/utils/functions.d.ts +14 -0
- package/schematics/update-tool/utils/functions.js +20 -0
- package/schematics/update-tool/utils/functions.js.map +1 -0
- package/schematics/update-tool/utils/imports.d.ts +15 -0
- package/schematics/update-tool/utils/imports.js +35 -0
- package/schematics/update-tool/utils/imports.js.map +1 -0
- package/schematics/update-tool/utils/line-mappings.d.ts +21 -0
- package/schematics/update-tool/utils/line-mappings.js +75 -0
- package/schematics/update-tool/utils/line-mappings.js.map +1 -0
- package/schematics/update-tool/utils/parse-tsconfig.d.ts +9 -0
- package/schematics/update-tool/utils/parse-tsconfig.js +22 -0
- package/schematics/update-tool/utils/parse-tsconfig.js.map +1 -0
- package/schematics/update-tool/utils/property-name.d.ts +18 -0
- package/schematics/update-tool/utils/property-name.js +27 -0
- package/schematics/update-tool/utils/property-name.js.map +1 -0
- package/schematics/update-tool/version-changes.d.ts +32 -0
- package/schematics/update-tool/version-changes.js +41 -0
- package/schematics/update-tool/version-changes.js.map +1 -0
- package/schematics/utils/build-component.js +4 -4
- package/schematics/utils/build-component.js.map +1 -1
- package/schematics/{ng-update/upgrade-rules → utils}/project-tsconfig-paths.d.ts +4 -1
- package/schematics/utils/project-tsconfig-paths.js +77 -0
- package/schematics/utils/project-tsconfig-paths.js.map +1 -0
- package/typings/a11y/aria-describer/aria-describer.d.ts +4 -3
- package/typings/a11y/index.metadata.json +1 -1
- package/typings/drag-drop/directives/drag.d.ts +1 -1
- package/typings/drag-drop/directives/drop-list.d.ts +2 -0
- package/typings/drag-drop/drag-drop-registry.d.ts +2 -0
- package/typings/drag-drop/drag-ref.d.ts +10 -1
- package/typings/drag-drop/drop-list-ref.d.ts +59 -3
- package/typings/drag-drop/index.metadata.json +1 -1
- package/typings/esm5/a11y/aria-describer/aria-describer.d.ts +4 -3
- package/typings/esm5/a11y/index.metadata.json +1 -1
- package/typings/esm5/drag-drop/directives/drag.d.ts +1 -1
- package/typings/esm5/drag-drop/directives/drop-list.d.ts +2 -0
- package/typings/esm5/drag-drop/drag-drop-registry.d.ts +2 -0
- package/typings/esm5/drag-drop/drag-ref.d.ts +10 -1
- package/typings/esm5/drag-drop/drop-list-ref.d.ts +59 -3
- package/typings/esm5/drag-drop/index.metadata.json +1 -1
- package/typings/esm5/index.metadata.json +1 -1
- package/typings/esm5/overlay/index.metadata.json +1 -1
- package/typings/esm5/overlay/overlay-ref.d.ts +1 -0
- package/typings/index.metadata.json +1 -1
- package/typings/overlay/index.metadata.json +1 -1
- package/typings/overlay/overlay-ref.d.ts +1 -0
- package/typings/schematics/index.d.ts +1 -0
- package/typings/schematics/ng-update/data/attribute-selectors.d.ts +1 -1
- package/typings/schematics/ng-update/data/class-names.d.ts +1 -1
- package/typings/schematics/ng-update/data/constructor-checks.d.ts +1 -1
- package/typings/schematics/ng-update/data/css-selectors.d.ts +1 -1
- package/typings/schematics/ng-update/data/element-selectors.d.ts +1 -1
- package/typings/schematics/ng-update/data/input-names.d.ts +1 -1
- package/typings/schematics/ng-update/data/method-call-checks.d.ts +1 -1
- package/typings/schematics/ng-update/data/output-names.d.ts +1 -1
- package/typings/schematics/ng-update/data/property-names.d.ts +1 -1
- package/typings/schematics/ng-update/index.d.ts +0 -2
- package/typings/schematics/ng-update/public-api.d.ts +0 -5
- package/typings/schematics/ng-update/upgrade-data.d.ts +5 -30
- package/typings/schematics/ng-update/upgrade-rules/attribute-selectors-rule.d.ts +25 -0
- package/typings/schematics/ng-update/upgrade-rules/class-inheritance-rule.d.ts +26 -0
- package/{schematics/ng-update/upgrade-rules/class-names/classNamesIdentifierRule.d.ts → typings/schematics/ng-update/upgrade-rules/class-names-rule.d.ts} +7 -7
- package/typings/schematics/ng-update/upgrade-rules/constructor-signature-rule.d.ts +29 -0
- package/typings/schematics/ng-update/upgrade-rules/css-selectors-rule.d.ts +25 -0
- package/typings/schematics/ng-update/upgrade-rules/element-selectors-rule.d.ts +25 -0
- package/typings/schematics/ng-update/upgrade-rules/index.d.ts +13 -4
- package/typings/schematics/ng-update/upgrade-rules/input-names-rule.d.ts +26 -0
- package/typings/schematics/ng-update/upgrade-rules/{signature-check/methodCallsCheckRule.d.ts → method-call-arguments-rule.d.ts} +8 -9
- package/typings/schematics/ng-update/upgrade-rules/misc-template-rule.d.ts +18 -0
- package/typings/schematics/ng-update/upgrade-rules/output-names-rule.d.ts +22 -0
- package/typings/schematics/ng-update/upgrade-rules/property-names-rule.d.ts +22 -0
- package/typings/schematics/update-tool/component-resource-collector.d.ts +41 -0
- package/typings/schematics/update-tool/index.d.ts +13 -0
- package/typings/schematics/update-tool/migration-rule.d.ts +45 -0
- package/typings/schematics/update-tool/public-api.d.ts +12 -0
- package/typings/schematics/{ng-update → update-tool}/target-version.d.ts +3 -3
- package/typings/schematics/update-tool/utils/decorators.d.ts +23 -0
- package/typings/schematics/update-tool/utils/functions.d.ts +14 -0
- package/typings/schematics/update-tool/utils/imports.d.ts +15 -0
- package/typings/schematics/update-tool/utils/line-mappings.d.ts +21 -0
- package/typings/schematics/update-tool/utils/parse-tsconfig.d.ts +9 -0
- package/typings/schematics/update-tool/utils/property-name.d.ts +18 -0
- package/typings/schematics/update-tool/version-changes.d.ts +32 -0
- package/typings/schematics/{ng-update/upgrade-rules → utils}/project-tsconfig-paths.d.ts +4 -1
- package/schematics/ng-update/target-version.js.map +0 -1
- package/schematics/ng-update/tslint/component-file.d.ts +0 -14
- package/schematics/ng-update/tslint/component-file.js +0 -31
- package/schematics/ng-update/tslint/component-file.js.map +0 -1
- package/schematics/ng-update/tslint/component-walker.d.ts +0 -47
- package/schematics/ng-update/tslint/component-walker.js +0 -142
- package/schematics/ng-update/tslint/component-walker.js.map +0 -1
- package/schematics/ng-update/tslint/external-failure-walker.d.ts +0 -25
- package/schematics/ng-update/tslint/external-failure-walker.js +0 -38
- package/schematics/ng-update/tslint/external-failure-walker.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStringLiteralRule.d.ts +0 -16
- package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStringLiteralRule.js +0 -49
- package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStringLiteralRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStylesheetRule.d.ts +0 -31
- package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStylesheetRule.js +0 -62
- package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStylesheetRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsTemplateRule.d.ts +0 -30
- package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsTemplateRule.js +0 -59
- package/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsTemplateRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/class-inheritance/classInheritanceCheckRule.d.ts +0 -26
- package/schematics/ng-update/upgrade-rules/class-inheritance/classInheritanceCheckRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/class-names/classNamesIdentifierRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStringLiteralRule.d.ts +0 -24
- package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStringLiteralRule.js +0 -53
- package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStringLiteralRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStylesheetRule.d.ts +0 -31
- package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStylesheetRule.js +0 -63
- package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStylesheetRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsTemplateRule.d.ts +0 -30
- package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsTemplateRule.js +0 -62
- package/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsTemplateRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStringLiteralRule.d.ts +0 -24
- package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStringLiteralRule.js +0 -50
- package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStringLiteralRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStylesheetRule.d.ts +0 -31
- package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStylesheetRule.js +0 -60
- package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStylesheetRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsTemplateRule.d.ts +0 -30
- package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsTemplateRule.js +0 -59
- package/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsTemplateRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/input-names/inputNamesStylesheetRule.d.ts +0 -36
- package/schematics/ng-update/upgrade-rules/input-names/inputNamesStylesheetRule.js +0 -67
- package/schematics/ng-update/upgrade-rules/input-names/inputNamesStylesheetRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/input-names/inputNamesTemplateRule.d.ts +0 -30
- package/schematics/ng-update/upgrade-rules/input-names/inputNamesTemplateRule.js +0 -67
- package/schematics/ng-update/upgrade-rules/input-names/inputNamesTemplateRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/misc-checks/checkTemplateMiscRule.d.ts +0 -23
- package/schematics/ng-update/upgrade-rules/misc-checks/checkTemplateMiscRule.js +0 -49
- package/schematics/ng-update/upgrade-rules/misc-checks/checkTemplateMiscRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/output-names/outputNamesTemplateRule.d.ts +0 -30
- package/schematics/ng-update/upgrade-rules/output-names/outputNamesTemplateRule.js +0 -67
- package/schematics/ng-update/upgrade-rules/output-names/outputNamesTemplateRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/project-tsconfig-paths.js +0 -64
- package/schematics/ng-update/upgrade-rules/project-tsconfig-paths.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/property-names/propertyNamesAccessRule.d.ts +0 -22
- package/schematics/ng-update/upgrade-rules/property-names/propertyNamesAccessRule.js +0 -46
- package/schematics/ng-update/upgrade-rules/property-names/propertyNamesAccessRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/signature-check/constructorSignatureCheckRule.d.ts +0 -16
- package/schematics/ng-update/upgrade-rules/signature-check/constructorSignatureCheckRule.js +0 -132
- package/schematics/ng-update/upgrade-rules/signature-check/constructorSignatureCheckRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/signature-check/methodCallsCheckRule.js +0 -58
- package/schematics/ng-update/upgrade-rules/signature-check/methodCallsCheckRule.js.map +0 -1
- package/schematics/ng-update/upgrade-rules/tslint-config.d.ts +0 -32
- package/schematics/ng-update/upgrade-rules/tslint-config.js +0 -76
- package/schematics/ng-update/upgrade-rules/tslint-config.js.map +0 -1
- package/typings/schematics/ng-update/tslint/component-file.d.ts +0 -14
- package/typings/schematics/ng-update/tslint/component-walker.d.ts +0 -47
- package/typings/schematics/ng-update/tslint/external-failure-walker.d.ts +0 -25
- package/typings/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStringLiteralRule.d.ts +0 -16
- package/typings/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsStylesheetRule.d.ts +0 -31
- package/typings/schematics/ng-update/upgrade-rules/attribute-selectors/attributeSelectorsTemplateRule.d.ts +0 -30
- package/typings/schematics/ng-update/upgrade-rules/class-inheritance/classInheritanceCheckRule.d.ts +0 -26
- package/typings/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStringLiteralRule.d.ts +0 -24
- package/typings/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsStylesheetRule.d.ts +0 -31
- package/typings/schematics/ng-update/upgrade-rules/css-selectors/cssSelectorsTemplateRule.d.ts +0 -30
- package/typings/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStringLiteralRule.d.ts +0 -24
- package/typings/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsStylesheetRule.d.ts +0 -31
- package/typings/schematics/ng-update/upgrade-rules/element-selectors/elementSelectorsTemplateRule.d.ts +0 -30
- package/typings/schematics/ng-update/upgrade-rules/input-names/inputNamesStylesheetRule.d.ts +0 -36
- package/typings/schematics/ng-update/upgrade-rules/input-names/inputNamesTemplateRule.d.ts +0 -30
- package/typings/schematics/ng-update/upgrade-rules/misc-checks/checkTemplateMiscRule.d.ts +0 -23
- package/typings/schematics/ng-update/upgrade-rules/output-names/outputNamesTemplateRule.d.ts +0 -30
- package/typings/schematics/ng-update/upgrade-rules/property-names/propertyNamesAccessRule.d.ts +0 -22
- package/typings/schematics/ng-update/upgrade-rules/signature-check/constructorSignatureCheckRule.d.ts +0 -16
- package/typings/schematics/ng-update/upgrade-rules/tslint-config.d.ts +0 -32
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.io/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
const ts = require("typescript");
|
|
11
|
+
const migration_rule_1 = require("../../update-tool/migration-rule");
|
|
12
|
+
const version_changes_1 = require("../../update-tool/version-changes");
|
|
13
|
+
/**
|
|
14
|
+
* List of diagnostic codes that refer to pre-emit diagnostics which indicate invalid
|
|
15
|
+
* new expression or super call signatures. See the list of diagnostics here:
|
|
16
|
+
*
|
|
17
|
+
* https://github.com/Microsoft/TypeScript/blob/master/src/compiler/diagnosticMessages.json
|
|
18
|
+
*/
|
|
19
|
+
const signatureErrorDiagnostics = [
|
|
20
|
+
// Type not assignable error diagnostic.
|
|
21
|
+
2345,
|
|
22
|
+
// Constructor argument length invalid diagnostics
|
|
23
|
+
2554,
|
|
24
|
+
2555,
|
|
25
|
+
2556,
|
|
26
|
+
2557,
|
|
27
|
+
];
|
|
28
|
+
/**
|
|
29
|
+
* Rule that visits every TypeScript new expression or super call and checks if
|
|
30
|
+
* the parameter type signature is invalid and needs to be updated manually.
|
|
31
|
+
*/
|
|
32
|
+
class ConstructorSignatureRule extends migration_rule_1.MigrationRule {
|
|
33
|
+
constructor() {
|
|
34
|
+
super(...arguments);
|
|
35
|
+
// Note that the data for this rule is not distinguished based on the target version because
|
|
36
|
+
// we don't keep track of the new signature and don't want to update incrementally.
|
|
37
|
+
// See: https://github.com/angular/components/pull/12970#issuecomment-418337566
|
|
38
|
+
this.data = version_changes_1.getAllChanges(this.upgradeData.constructorChecks);
|
|
39
|
+
// Only enable the migration rule if there is upgrade data.
|
|
40
|
+
this.ruleEnabled = this.data.length !== 0;
|
|
41
|
+
}
|
|
42
|
+
visitNode(node) {
|
|
43
|
+
if (ts.isSourceFile(node)) {
|
|
44
|
+
this._visitSourceFile(node);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Method that will be called for each source file of the upgrade project. In order to
|
|
49
|
+
* properly determine invalid constructor signatures, we take advantage of the pre-emit
|
|
50
|
+
* diagnostics from TypeScript.
|
|
51
|
+
*
|
|
52
|
+
* By using the diagnostics, the migration can handle type assignability. Not using
|
|
53
|
+
* diagnostics would mean that we need to use simple type equality checking which is
|
|
54
|
+
* too strict. See related issue: https://github.com/Microsoft/TypeScript/issues/9879
|
|
55
|
+
*/
|
|
56
|
+
_visitSourceFile(sourceFile) {
|
|
57
|
+
// List of classes of which the constructor signature has changed.
|
|
58
|
+
const diagnostics = ts.getPreEmitDiagnostics(this.program, sourceFile)
|
|
59
|
+
.filter(diagnostic => signatureErrorDiagnostics.includes(diagnostic.code))
|
|
60
|
+
.filter(diagnostic => diagnostic.start !== undefined);
|
|
61
|
+
for (const diagnostic of diagnostics) {
|
|
62
|
+
const node = findConstructorNode(diagnostic, sourceFile);
|
|
63
|
+
if (!node) {
|
|
64
|
+
continue;
|
|
65
|
+
}
|
|
66
|
+
const classType = this.typeChecker.getTypeAtLocation(node.expression);
|
|
67
|
+
const className = classType.symbol && classType.symbol.name;
|
|
68
|
+
const isNewExpression = ts.isNewExpression(node);
|
|
69
|
+
// Determine the class names of the actual construct signatures because we cannot assume that
|
|
70
|
+
// the diagnostic refers to a constructor of the actual expression. In case the constructor
|
|
71
|
+
// is inherited, we need to detect that the owner-class of the constructor is added to the
|
|
72
|
+
// constructor checks upgrade data. e.g. `class CustomCalendar extends MatCalendar {}`.
|
|
73
|
+
const signatureClassNames = classType.getConstructSignatures()
|
|
74
|
+
.map(signature => getClassDeclarationOfSignature(signature))
|
|
75
|
+
.map(declaration => declaration && declaration.name ? declaration.name.text : null)
|
|
76
|
+
.filter(Boolean);
|
|
77
|
+
// Besides checking the signature class names, we need to check the actual class name because
|
|
78
|
+
// there can be classes without an explicit constructor.
|
|
79
|
+
if (!this.data.includes(className) &&
|
|
80
|
+
!signatureClassNames.some(name => this.data.includes(name))) {
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
const classSignatures = classType.getConstructSignatures().map(signature => getParameterTypesFromSignature(signature, this.typeChecker));
|
|
84
|
+
const expressionName = isNewExpression ? `new ${className}` : 'super';
|
|
85
|
+
const signatures = classSignatures.map(signature => signature.map(t => this.typeChecker.typeToString(t)))
|
|
86
|
+
.map(signature => `${expressionName}(${signature.join(', ')})`)
|
|
87
|
+
.join(' or ');
|
|
88
|
+
this.createFailureAtNode(node, `Found "${className}" constructed with ` +
|
|
89
|
+
`an invalid signature. Please manually update the ${expressionName} expression to ` +
|
|
90
|
+
`match the new signature${classSignatures.length > 1 ? 's' : ''}: ${signatures}`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
exports.ConstructorSignatureRule = ConstructorSignatureRule;
|
|
95
|
+
/** Resolves the type for each parameter in the specified signature. */
|
|
96
|
+
function getParameterTypesFromSignature(signature, typeChecker) {
|
|
97
|
+
return signature.getParameters().map(param => typeChecker.getTypeAtLocation(param.declarations[0]));
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Walks through each node of a source file in order to find a new-expression node or super-call
|
|
101
|
+
* expression node that is captured by the specified diagnostic.
|
|
102
|
+
*/
|
|
103
|
+
function findConstructorNode(diagnostic, sourceFile) {
|
|
104
|
+
let resolvedNode = null;
|
|
105
|
+
const _visitNode = (node) => {
|
|
106
|
+
// Check whether the current node contains the diagnostic. If the node contains the diagnostic,
|
|
107
|
+
// walk deeper in order to find all constructor expression nodes.
|
|
108
|
+
if (node.getStart() <= diagnostic.start && node.getEnd() >= diagnostic.start) {
|
|
109
|
+
if (ts.isNewExpression(node) ||
|
|
110
|
+
(ts.isCallExpression(node) && node.expression.kind === ts.SyntaxKind.SuperKeyword)) {
|
|
111
|
+
resolvedNode = node;
|
|
112
|
+
}
|
|
113
|
+
ts.forEachChild(node, _visitNode);
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
ts.forEachChild(sourceFile, _visitNode);
|
|
117
|
+
return resolvedNode;
|
|
118
|
+
}
|
|
119
|
+
/** Determines the class declaration of the specified construct signature. */
|
|
120
|
+
function getClassDeclarationOfSignature(signature) {
|
|
121
|
+
let node = signature.getDeclaration();
|
|
122
|
+
// Handle signatures which don't have an actual declaration. This happens if a class
|
|
123
|
+
// does not have an explicitly written constructor.
|
|
124
|
+
if (!node) {
|
|
125
|
+
return null;
|
|
126
|
+
}
|
|
127
|
+
while (!ts.isSourceFile(node = node.parent)) {
|
|
128
|
+
if (ts.isClassDeclaration(node)) {
|
|
129
|
+
return node;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return null;
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=constructor-signature-rule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constructor-signature-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/constructor-signature-rule.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import * as ts from 'typescript';
|
|
9
|
+
import { ResolvedResource } from '../../update-tool/component-resource-collector';
|
|
10
|
+
import { MigrationRule } from '../../update-tool/migration-rule';
|
|
11
|
+
import { RuleUpgradeData } from '../upgrade-data';
|
|
12
|
+
/**
|
|
13
|
+
* Rule that walks through every string literal, template and stylesheet in
|
|
14
|
+
* order to migrate outdated CSS selectors to the new selector.
|
|
15
|
+
*/
|
|
16
|
+
export declare class CssSelectorsRule extends MigrationRule<RuleUpgradeData> {
|
|
17
|
+
/** Change data that upgrades to the specified target version. */
|
|
18
|
+
data: any;
|
|
19
|
+
ruleEnabled: any;
|
|
20
|
+
visitNode(node: ts.Node): void;
|
|
21
|
+
visitTemplate(template: ResolvedResource): void;
|
|
22
|
+
visitStylesheet(stylesheet: ResolvedResource): void;
|
|
23
|
+
private _visitStringLiteralLike;
|
|
24
|
+
private _replaceSelector;
|
|
25
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.io/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
const ts = require("typescript");
|
|
11
|
+
const migration_rule_1 = require("../../update-tool/migration-rule");
|
|
12
|
+
const literal_1 = require("../typescript/literal");
|
|
13
|
+
const upgrade_data_1 = require("../upgrade-data");
|
|
14
|
+
/**
|
|
15
|
+
* Rule that walks through every string literal, template and stylesheet in
|
|
16
|
+
* order to migrate outdated CSS selectors to the new selector.
|
|
17
|
+
*/
|
|
18
|
+
class CssSelectorsRule extends migration_rule_1.MigrationRule {
|
|
19
|
+
constructor() {
|
|
20
|
+
super(...arguments);
|
|
21
|
+
/** Change data that upgrades to the specified target version. */
|
|
22
|
+
this.data = upgrade_data_1.getVersionUpgradeData(this, 'cssSelectors');
|
|
23
|
+
// Only enable the migration rule if there is upgrade data.
|
|
24
|
+
this.ruleEnabled = this.data.length !== 0;
|
|
25
|
+
}
|
|
26
|
+
visitNode(node) {
|
|
27
|
+
if (ts.isStringLiteralLike(node)) {
|
|
28
|
+
this._visitStringLiteralLike(node);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
visitTemplate(template) {
|
|
32
|
+
this.data.forEach(data => {
|
|
33
|
+
if (data.whitelist && !data.whitelist.html) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
literal_1.findAllSubstringIndices(template.content, data.replace)
|
|
37
|
+
.map(offset => template.start + offset)
|
|
38
|
+
.forEach(start => this._replaceSelector(template.filePath, start, data));
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
visitStylesheet(stylesheet) {
|
|
42
|
+
this.data.forEach(data => {
|
|
43
|
+
if (data.whitelist && !data.whitelist.stylesheet) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
literal_1.findAllSubstringIndices(stylesheet.content, data.replace)
|
|
47
|
+
.map(offset => stylesheet.start + offset)
|
|
48
|
+
.forEach(start => this._replaceSelector(stylesheet.filePath, start, data));
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
_visitStringLiteralLike(node) {
|
|
52
|
+
if (node.parent && node.parent.kind !== ts.SyntaxKind.CallExpression) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const textContent = node.getText();
|
|
56
|
+
const filePath = node.getSourceFile().fileName;
|
|
57
|
+
this.data.forEach(data => {
|
|
58
|
+
if (data.whitelist && !data.whitelist.strings) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
literal_1.findAllSubstringIndices(textContent, data.replace)
|
|
62
|
+
.map(offset => node.getStart() + offset)
|
|
63
|
+
.forEach(start => this._replaceSelector(filePath, start, data));
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
_replaceSelector(filePath, start, data) {
|
|
67
|
+
const updateRecorder = this.getUpdateRecorder(filePath);
|
|
68
|
+
updateRecorder.remove(start, data.replace.length);
|
|
69
|
+
updateRecorder.insertRight(start, data.replaceWith);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
exports.CssSelectorsRule = CssSelectorsRule;
|
|
73
|
+
//# sourceMappingURL=css-selectors-rule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css-selectors-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/css-selectors-rule.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import * as ts from 'typescript';
|
|
9
|
+
import { ResolvedResource } from '../../update-tool/component-resource-collector';
|
|
10
|
+
import { MigrationRule } from '../../update-tool/migration-rule';
|
|
11
|
+
import { RuleUpgradeData } from '../upgrade-data';
|
|
12
|
+
/**
|
|
13
|
+
* Rule that walks through every string literal, template and stylesheet in order
|
|
14
|
+
* to migrate outdated element selectors to the new one.
|
|
15
|
+
*/
|
|
16
|
+
export declare class ElementSelectorsRule extends MigrationRule<RuleUpgradeData> {
|
|
17
|
+
/** Change data that upgrades to the specified target version. */
|
|
18
|
+
data: any;
|
|
19
|
+
ruleEnabled: any;
|
|
20
|
+
visitNode(node: ts.Node): void;
|
|
21
|
+
visitTemplate(template: ResolvedResource): void;
|
|
22
|
+
visitStylesheet(stylesheet: ResolvedResource): void;
|
|
23
|
+
private _visitStringLiteralLike;
|
|
24
|
+
private _replaceSelector;
|
|
25
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.io/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
const ts = require("typescript");
|
|
11
|
+
const migration_rule_1 = require("../../update-tool/migration-rule");
|
|
12
|
+
const literal_1 = require("../typescript/literal");
|
|
13
|
+
const upgrade_data_1 = require("../upgrade-data");
|
|
14
|
+
/**
|
|
15
|
+
* Rule that walks through every string literal, template and stylesheet in order
|
|
16
|
+
* to migrate outdated element selectors to the new one.
|
|
17
|
+
*/
|
|
18
|
+
class ElementSelectorsRule extends migration_rule_1.MigrationRule {
|
|
19
|
+
constructor() {
|
|
20
|
+
super(...arguments);
|
|
21
|
+
/** Change data that upgrades to the specified target version. */
|
|
22
|
+
this.data = upgrade_data_1.getVersionUpgradeData(this, 'elementSelectors');
|
|
23
|
+
// Only enable the migration rule if there is upgrade data.
|
|
24
|
+
this.ruleEnabled = this.data.length !== 0;
|
|
25
|
+
}
|
|
26
|
+
visitNode(node) {
|
|
27
|
+
if (ts.isStringLiteralLike(node)) {
|
|
28
|
+
this._visitStringLiteralLike(node);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
visitTemplate(template) {
|
|
32
|
+
this.data.forEach(selector => {
|
|
33
|
+
literal_1.findAllSubstringIndices(template.content, selector.replace)
|
|
34
|
+
.map(offset => template.start + offset)
|
|
35
|
+
.forEach(start => this._replaceSelector(template.filePath, start, selector));
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
visitStylesheet(stylesheet) {
|
|
39
|
+
this.data.forEach(selector => {
|
|
40
|
+
literal_1.findAllSubstringIndices(stylesheet.content, selector.replace)
|
|
41
|
+
.map(offset => stylesheet.start + offset)
|
|
42
|
+
.forEach(start => this._replaceSelector(stylesheet.filePath, start, selector));
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
_visitStringLiteralLike(node) {
|
|
46
|
+
if (node.parent && node.parent.kind !== ts.SyntaxKind.CallExpression) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
const textContent = node.getText();
|
|
50
|
+
const filePath = node.getSourceFile().fileName;
|
|
51
|
+
this.data.forEach(selector => {
|
|
52
|
+
literal_1.findAllSubstringIndices(textContent, selector.replace)
|
|
53
|
+
.map(offset => node.getStart() + offset)
|
|
54
|
+
.forEach(start => this._replaceSelector(filePath, start, selector));
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
_replaceSelector(filePath, start, data) {
|
|
58
|
+
const updateRecorder = this.getUpdateRecorder(filePath);
|
|
59
|
+
updateRecorder.remove(start, data.replace.length);
|
|
60
|
+
updateRecorder.insertRight(start, data.replaceWith);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
exports.ElementSelectorsRule = ElementSelectorsRule;
|
|
64
|
+
//# sourceMappingURL=element-selectors-rule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element-selectors-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/element-selectors-rule.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,iCAAiC;AAEjC,qEAA+D;AAE/D,mDAA8D;AAC9D,kDAAuE;AAEvE;;;GAGG;AACH,MAAa,oBAAqB,SAAQ,8BAA8B;IAAxE;;QACE,iEAAiE;QACjE,SAAI,GAAG,oCAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAEvD,2DAA2D;QAC3D,gBAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;IA4CvC,CAAC;IA1CC,SAAS,CAAC,IAAa;QACrB,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE;YAChC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;SACpC;IACH,CAAC;IAED,aAAa,CAAC,QAA0B;QACtC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,iCAAuB,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;iBACtD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC;iBACtC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;QACnF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,eAAe,CAAC,UAA4B;QAC1C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,iCAAuB,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;iBACxD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC;iBACxC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,uBAAuB,CAAC,IAA0B;QACxD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE;YACpE,OAAO;SACR;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC;QAE/C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,iCAAuB,CAAC,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC;iBACjD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC;iBACvC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,gBAAgB,CAAC,QAAgB,EAAE,KAAa,EAAE,IAAgC;QACxF,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACxD,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClD,cAAc,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;CACF;AAjDD,oDAiDC"}
|
|
@@ -6,7 +6,16 @@
|
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
8
|
import { Rule } from '@angular-devkit/schematics';
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
import { Constructor } from '../../update-tool';
|
|
10
|
+
import { MigrationRule } from '../../update-tool/migration-rule';
|
|
11
|
+
import { TargetVersion } from '../../update-tool/target-version';
|
|
12
|
+
import { RuleUpgradeData } from '../upgrade-data';
|
|
13
|
+
/** List of migration rules which run for the CDK update. */
|
|
14
|
+
export declare const cdkMigrationRules: Constructor<MigrationRule<RuleUpgradeData>>[];
|
|
15
|
+
declare type NullableMigrationRule = Constructor<MigrationRule<RuleUpgradeData | null>>;
|
|
16
|
+
/**
|
|
17
|
+
* Creates a Angular schematic rule that runs the upgrade for the
|
|
18
|
+
* specified target version.
|
|
19
|
+
*/
|
|
20
|
+
export declare function createUpgradeRule(targetVersion: TargetVersion, extraRules: NullableMigrationRule[], upgradeData: RuleUpgradeData, onMigrationCompleteFn?: (targetVersion: TargetVersion, hasFailures: boolean) => void): Rule;
|
|
21
|
+
export {};
|
|
@@ -7,38 +7,58 @@
|
|
|
7
7
|
* found in the LICENSE file at https://angular.io/license
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
const update_tool_1 = require("../../update-tool");
|
|
11
|
+
const project_tsconfig_paths_1 = require("../../utils/project-tsconfig-paths");
|
|
12
|
+
const attribute_selectors_rule_1 = require("./attribute-selectors-rule");
|
|
13
|
+
const class_inheritance_rule_1 = require("./class-inheritance-rule");
|
|
14
|
+
const class_names_rule_1 = require("./class-names-rule");
|
|
15
|
+
const constructor_signature_rule_1 = require("./constructor-signature-rule");
|
|
16
|
+
const css_selectors_rule_1 = require("./css-selectors-rule");
|
|
17
|
+
const element_selectors_rule_1 = require("./element-selectors-rule");
|
|
18
|
+
const input_names_rule_1 = require("./input-names-rule");
|
|
19
|
+
const method_call_arguments_rule_1 = require("./method-call-arguments-rule");
|
|
20
|
+
const misc_template_rule_1 = require("./misc-template-rule");
|
|
21
|
+
const output_names_rule_1 = require("./output-names-rule");
|
|
22
|
+
const property_names_rule_1 = require("./property-names-rule");
|
|
23
|
+
/** List of migration rules which run for the CDK update. */
|
|
24
|
+
exports.cdkMigrationRules = [
|
|
25
|
+
attribute_selectors_rule_1.AttributeSelectorsRule,
|
|
26
|
+
class_inheritance_rule_1.ClassInheritanceRule,
|
|
27
|
+
class_names_rule_1.ClassNamesRule,
|
|
28
|
+
constructor_signature_rule_1.ConstructorSignatureRule,
|
|
29
|
+
css_selectors_rule_1.CssSelectorsRule,
|
|
30
|
+
element_selectors_rule_1.ElementSelectorsRule,
|
|
31
|
+
input_names_rule_1.InputNamesRule,
|
|
32
|
+
method_call_arguments_rule_1.MethodCallArgumentsRule,
|
|
33
|
+
misc_template_rule_1.MiscTemplateRule,
|
|
34
|
+
output_names_rule_1.OutputNamesRule,
|
|
35
|
+
property_names_rule_1.PropertyNamesRule,
|
|
36
|
+
];
|
|
37
|
+
/**
|
|
38
|
+
* Creates a Angular schematic rule that runs the upgrade for the
|
|
39
|
+
* specified target version.
|
|
40
|
+
*/
|
|
41
|
+
function createUpgradeRule(targetVersion, extraRules, upgradeData, onMigrationCompleteFn) {
|
|
17
42
|
return (tree, context) => {
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
if (!
|
|
21
|
-
|
|
22
|
-
|
|
43
|
+
const logger = context.logger;
|
|
44
|
+
const { buildPaths, testPaths } = project_tsconfig_paths_1.getProjectTsConfigPaths(tree);
|
|
45
|
+
if (!buildPaths.length && !testPaths.length) {
|
|
46
|
+
// We don't want to throw here because it would mean that other migrations in the
|
|
47
|
+
// pipeline don't run either. Rather print an error message.
|
|
48
|
+
logger.error('Could not find any TypeScript project in the CLI workspace configuration.');
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
// Keep track of all project source files which have been checked/migrated. This is
|
|
52
|
+
// necessary because multiple TypeScript projects can contain the same source file and
|
|
53
|
+
// we don't want to check these again, as this would result in duplicated failure messages.
|
|
54
|
+
const analyzedFiles = new Set();
|
|
55
|
+
let hasRuleFailures = false;
|
|
56
|
+
for (const tsconfigPath of [...buildPaths, ...testPaths]) {
|
|
57
|
+
hasRuleFailures = hasRuleFailures || update_tool_1.runMigrationRules(tree, context.logger, tsconfigPath, targetVersion, [...exports.cdkMigrationRules, ...extraRules], upgradeData, analyzedFiles);
|
|
23
58
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
// dist. The files will be read by the individual stylesheet rules and checked.
|
|
27
|
-
const extraStyleFiles = glob_1.sync('!(node_modules|dist)/**/*.+(css|scss)', { absolute: true });
|
|
28
|
-
const tslintConfig = tslint_config_1.createTslintConfig(targetVersion, Object.assign({
|
|
29
|
-
// Default options that can be overwritten if specified explicitly. e.g. if the
|
|
30
|
-
// Material update schematic wants to specify a different upgrade data.
|
|
31
|
-
extraStyleFiles: extraStyleFiles }, upgradeConfig));
|
|
32
|
-
for (const tsconfig of projectTsConfigPaths) {
|
|
33
|
-
// Run the update tslint rules.
|
|
34
|
-
tslintFixTasks.push(context.addTask(new tasks_1.TslintFixTask(tslintConfig, {
|
|
35
|
-
silent: false,
|
|
36
|
-
ignoreErrors: true,
|
|
37
|
-
tsConfigPath: tsconfig,
|
|
38
|
-
})));
|
|
59
|
+
if (onMigrationCompleteFn) {
|
|
60
|
+
onMigrationCompleteFn(targetVersion, hasRuleFailures);
|
|
39
61
|
}
|
|
40
|
-
// Delete the temporary schematics directory.
|
|
41
|
-
context.addTask(new tasks_1.RunSchematicTask('ng-post-update', {}), tslintFixTasks);
|
|
42
62
|
};
|
|
43
63
|
}
|
|
44
64
|
exports.createUpgradeRule = createUpgradeRule;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAIH,mDAAiE;AAGjE,+EAA2E;AAG3E,yEAAkE;AAClE,qEAA8D;AAC9D,yDAAkD;AAClD,6EAAsE;AACtE,6DAAsD;AACtD,qEAA8D;AAC9D,yDAAkD;AAClD,6EAAqE;AACrE,6DAAsD;AACtD,2DAAoD;AACpD,+DAAwD;AAGxD,4DAA4D;AAC/C,QAAA,iBAAiB,GAAkD;IAC9E,iDAAsB;IACtB,6CAAoB;IACpB,iCAAc;IACd,qDAAwB;IACxB,qCAAgB;IAChB,6CAAoB;IACpB,iCAAc;IACd,oDAAuB;IACvB,qCAAgB;IAChB,mCAAe;IACf,uCAAiB;CAClB,CAAC;AAIF;;;GAGG;AACH,SAAgB,iBAAiB,CAC7B,aAA4B,EAAE,UAAmC,EAAE,WAA4B,EAC/F,qBAAoF;IACtF,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAC/C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,EAAC,UAAU,EAAE,SAAS,EAAC,GAAG,gDAAuB,CAAC,IAAI,CAAC,CAAC;QAE9D,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;YAC3C,iFAAiF;YACjF,4DAA4D;YAC5D,MAAM,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;YAC1F,OAAO;SACR;QAED,mFAAmF;QACnF,sFAAsF;QACtF,2FAA2F;QAC3F,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;QACxC,IAAI,eAAe,GAAG,KAAK,CAAC;QAE5B,KAAK,MAAM,YAAY,IAAI,CAAC,GAAG,UAAU,EAAE,GAAG,SAAS,CAAC,EAAE;YACxD,eAAe,GAAG,eAAe,IAAI,+BAAiB,CAClD,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,GAAG,yBAAiB,EAAE,GAAG,UAAU,CAAC,EACxF,WAAW,EAAE,aAAa,CAAC,CAAC;SACjC;QAED,IAAI,qBAAqB,EAAE;YACzB,qBAAqB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;SACvD;IACH,CAAC,CAAC;AACJ,CAAC;AA9BD,8CA8BC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import { ResolvedResource } from '../../update-tool/component-resource-collector';
|
|
9
|
+
import { MigrationRule } from '../../update-tool/migration-rule';
|
|
10
|
+
import { InputNameUpgradeData } from '../data';
|
|
11
|
+
import { RuleUpgradeData } from '../upgrade-data';
|
|
12
|
+
/**
|
|
13
|
+
* Rule that walks through every template or stylesheet and replaces outdated input
|
|
14
|
+
* names to the new input name. Selectors in stylesheets could also target input
|
|
15
|
+
* bindings declared as static attribute. See for example:
|
|
16
|
+
*
|
|
17
|
+
* e.g. `<my-component color="primary">` becomes `my-component[color]`
|
|
18
|
+
*/
|
|
19
|
+
export declare class InputNamesRule extends MigrationRule<RuleUpgradeData> {
|
|
20
|
+
/** Change data that upgrades to the specified target version. */
|
|
21
|
+
data: InputNameUpgradeData[];
|
|
22
|
+
ruleEnabled: boolean;
|
|
23
|
+
visitStylesheet(stylesheet: ResolvedResource): void;
|
|
24
|
+
visitTemplate(template: ResolvedResource): void;
|
|
25
|
+
private _replaceInputName;
|
|
26
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.io/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
const __1 = require("../..");
|
|
11
|
+
const migration_rule_1 = require("../../update-tool/migration-rule");
|
|
12
|
+
const literal_1 = require("../typescript/literal");
|
|
13
|
+
const upgrade_data_1 = require("../upgrade-data");
|
|
14
|
+
/**
|
|
15
|
+
* Rule that walks through every template or stylesheet and replaces outdated input
|
|
16
|
+
* names to the new input name. Selectors in stylesheets could also target input
|
|
17
|
+
* bindings declared as static attribute. See for example:
|
|
18
|
+
*
|
|
19
|
+
* e.g. `<my-component color="primary">` becomes `my-component[color]`
|
|
20
|
+
*/
|
|
21
|
+
class InputNamesRule extends migration_rule_1.MigrationRule {
|
|
22
|
+
constructor() {
|
|
23
|
+
super(...arguments);
|
|
24
|
+
/** Change data that upgrades to the specified target version. */
|
|
25
|
+
this.data = upgrade_data_1.getVersionUpgradeData(this, 'inputNames');
|
|
26
|
+
// Only enable the migration rule if there is upgrade data.
|
|
27
|
+
this.ruleEnabled = this.data.length !== 0;
|
|
28
|
+
}
|
|
29
|
+
visitStylesheet(stylesheet) {
|
|
30
|
+
this.data.forEach(name => {
|
|
31
|
+
const currentSelector = `[${name.replace}]`;
|
|
32
|
+
const updatedSelector = `[${name.replaceWith}]`;
|
|
33
|
+
literal_1.findAllSubstringIndices(stylesheet.content, currentSelector)
|
|
34
|
+
.map(offset => stylesheet.start + offset)
|
|
35
|
+
.forEach(start => this._replaceInputName(stylesheet.filePath, start, currentSelector.length, updatedSelector));
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
visitTemplate(template) {
|
|
39
|
+
this.data.forEach(name => {
|
|
40
|
+
const whitelist = name.whitelist;
|
|
41
|
+
const relativeOffsets = [];
|
|
42
|
+
if (whitelist.attributes) {
|
|
43
|
+
relativeOffsets.push(...__1.findInputsOnElementWithAttr(template.content, name.replace, whitelist.attributes));
|
|
44
|
+
}
|
|
45
|
+
if (whitelist.elements) {
|
|
46
|
+
relativeOffsets.push(...__1.findInputsOnElementWithTag(template.content, name.replace, whitelist.elements));
|
|
47
|
+
}
|
|
48
|
+
relativeOffsets.map(offset => template.start + offset)
|
|
49
|
+
.forEach(start => this._replaceInputName(template.filePath, start, name.replace.length, name.replaceWith));
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
_replaceInputName(filePath, start, width, newName) {
|
|
53
|
+
const updateRecorder = this.getUpdateRecorder(filePath);
|
|
54
|
+
updateRecorder.remove(start, width);
|
|
55
|
+
updateRecorder.insertRight(start, newName);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
exports.InputNamesRule = InputNamesRule;
|
|
59
|
+
//# sourceMappingURL=input-names-rule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-names-rule.js","sourceRoot":"","sources":["../../../../../../src/cdk/schematics/ng-update/upgrade-rules/input-names-rule.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,6BAA8E;AAE9E,qEAA+D;AAG/D,mDAA8D;AAC9D,kDAAuE;AAEvE;;;;;;GAMG;AACH,MAAa,cAAe,SAAQ,8BAA8B;IAAlE;;QACE,iEAAiE;QACjE,SAAI,GAA2B,oCAAqB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAEzE,2DAA2D;QAC3D,gBAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;IA0CvC,CAAC;IAxCC,eAAe,CAAC,UAA4B;QAC1C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,MAAM,eAAe,GAAG,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC;YAC5C,MAAM,eAAe,GAAG,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC;YAEhD,iCAAuB,CAAC,UAAU,CAAC,OAAO,EAAE,eAAe,CAAC;iBACvD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC;iBACxC,OAAO,CACJ,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAC3B,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CAAC,QAA0B;QACtC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,MAAM,eAAe,GAAa,EAAE,CAAC;YAErC,IAAI,SAAS,CAAC,UAAU,EAAE;gBACxB,eAAe,CAAC,IAAI,CAChB,GAAG,+BAA2B,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;aAC3F;YAED,IAAI,SAAS,CAAC,QAAQ,EAAE;gBACtB,eAAe,CAAC,IAAI,CAChB,GAAG,8BAA0B,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;aACxF;YAED,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC;iBACjD,OAAO,CACJ,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAC3B,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,iBAAiB,CAAC,QAAgB,EAAE,KAAa,EAAE,KAAa,EAAE,OAAe;QACvF,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACxD,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACpC,cAAc,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;CACF;AA/CD,wCA+CC"}
|
|
@@ -5,19 +5,18 @@
|
|
|
5
5
|
* Use of this source code is governed by an MIT-style license that can be
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
|
-
import { ProgramAwareRuleWalker, RuleFailure, Rules } from 'tslint';
|
|
9
8
|
import * as ts from 'typescript';
|
|
10
|
-
import {
|
|
9
|
+
import { MigrationRule } from '../../update-tool/migration-rule';
|
|
10
|
+
import { MethodCallUpgradeData } from '../data';
|
|
11
|
+
import { RuleUpgradeData } from '../upgrade-data';
|
|
11
12
|
/**
|
|
12
|
-
* Rule that visits every TypeScript method call expression and checks if the
|
|
13
|
-
* is invalid and needs to be *manually* updated.
|
|
13
|
+
* Rule that visits every TypeScript method call expression and checks if the
|
|
14
|
+
* argument count is invalid and needs to be *manually* updated.
|
|
14
15
|
*/
|
|
15
|
-
export declare class
|
|
16
|
-
applyWithProgram(sourceFile: ts.SourceFile, program: ts.Program): RuleFailure[];
|
|
17
|
-
}
|
|
18
|
-
export declare class Walker extends ProgramAwareRuleWalker {
|
|
16
|
+
export declare class MethodCallArgumentsRule extends MigrationRule<RuleUpgradeData> {
|
|
19
17
|
/** Change data that upgrades to the specified target version. */
|
|
20
18
|
data: MethodCallUpgradeData[];
|
|
21
|
-
|
|
19
|
+
ruleEnabled: boolean;
|
|
20
|
+
visitNode(node: ts.Node): void;
|
|
22
21
|
private _checkPropertyAccessMethodCall;
|
|
23
22
|
}
|