jqwidgets-ng 23.0.7 → 23.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/jqwidgets/jqx-all.js +17 -9
- package/jqwidgets/jqxangular.js +1 -1
- package/jqwidgets/jqxbarcode.js +3 -1
- package/jqwidgets/jqxbargauge.js +1 -1
- package/jqwidgets/jqxbulletchart.js +1 -1
- package/jqwidgets/jqxbuttongroup.js +1 -1
- package/jqwidgets/jqxbuttons.js +1 -1
- package/jqwidgets/jqxcalendar.js +1 -1
- package/jqwidgets/jqxchart.annotations.js +1 -1
- package/jqwidgets/jqxchart.api.js +1 -1
- package/jqwidgets/jqxchart.core.js +2 -2
- package/jqwidgets/jqxchart.js +2 -2
- package/jqwidgets/jqxchart.rangeselector.js +1 -1
- package/jqwidgets/jqxchart.waterfall.js +1 -1
- package/jqwidgets/jqxcheckbox.js +1 -1
- package/jqwidgets/jqxcheckboxgroup.js +3 -1
- package/jqwidgets/jqxcolorpicker.js +1 -1
- package/jqwidgets/jqxcombobox.js +1 -1
- package/jqwidgets/jqxcomplexinput.js +1 -1
- package/jqwidgets/jqxcore.js +1 -1
- package/jqwidgets/jqxdata.export.js +1 -1
- package/jqwidgets/jqxdata.js +1 -1
- package/jqwidgets/jqxdatatable.js +2 -2
- package/jqwidgets/jqxdate.js +1 -1
- package/jqwidgets/jqxdatetimeinput.js +1 -1
- package/jqwidgets/jqxdocking.js +1 -1
- package/jqwidgets/jqxdockinglayout.js +1 -1
- package/jqwidgets/jqxdockpanel.js +1 -1
- package/jqwidgets/jqxdragdrop.js +1 -1
- package/jqwidgets/jqxdraw.js +1 -1
- package/jqwidgets/jqxdropdownbutton.js +1 -1
- package/jqwidgets/jqxdropdownlist.js +1 -1
- package/jqwidgets/jqxeditor.js +1 -1
- package/jqwidgets/jqxexpander.js +1 -1
- package/jqwidgets/jqxfileupload.js +1 -1
- package/jqwidgets/jqxform.js +1 -1
- package/jqwidgets/jqxformattedinput.js +1 -1
- package/jqwidgets/jqxgantt.js +1 -1
- package/jqwidgets/jqxgauge.js +1 -1
- package/jqwidgets/jqxgrid.aggregates.js +1 -1
- package/jqwidgets/jqxgrid.columnsreorder.js +1 -1
- package/jqwidgets/jqxgrid.columnsresize.js +2 -2
- package/jqwidgets/jqxgrid.edit.js +1 -1
- package/jqwidgets/jqxgrid.export.js +1 -1
- package/jqwidgets/jqxgrid.filter.js +2 -2
- package/jqwidgets/jqxgrid.grouping.js +1 -1
- package/jqwidgets/jqxgrid.js +2 -2
- package/jqwidgets/jqxgrid.pager.js +1 -1
- package/jqwidgets/jqxgrid.selection.js +1 -1
- package/jqwidgets/jqxgrid.sort.js +1 -1
- package/jqwidgets/jqxgrid.storage.js +2 -2
- package/jqwidgets/jqxheatmap.js +1 -1
- package/jqwidgets/jqxinput.js +1 -1
- package/jqwidgets/jqxkanban.js +1 -1
- package/jqwidgets/jqxknob.js +1 -1
- package/jqwidgets/jqxknockout.js +1 -1
- package/jqwidgets/jqxlayout.js +1 -1
- package/jqwidgets/jqxlistbox.js +1 -1
- package/jqwidgets/jqxlistmenu.js +1 -1
- package/jqwidgets/jqxloader.js +1 -1
- package/jqwidgets/jqxmaskedinput.js +1 -1
- package/jqwidgets/jqxmenu.js +1 -1
- package/jqwidgets/jqxnavbar.js +1 -1
- package/jqwidgets/jqxnavigationbar.js +1 -1
- package/jqwidgets/jqxnotification.js +1 -1
- package/jqwidgets/jqxnumberinput.js +1 -1
- package/jqwidgets/jqxpanel.js +1 -1
- package/jqwidgets/jqxpasswordinput.js +1 -1
- package/jqwidgets/jqxpivot.js +1 -1
- package/jqwidgets/jqxpivotdesigner.js +1 -1
- package/jqwidgets/jqxpivotgrid.js +1 -1
- package/jqwidgets/jqxpopover.js +1 -1
- package/jqwidgets/jqxprogressbar.js +1 -1
- package/jqwidgets/jqxqrcode.js +3 -1
- package/jqwidgets/jqxradiobutton.js +1 -1
- package/jqwidgets/jqxradiobuttongroup.js +3 -1
- package/jqwidgets/jqxrangeselector.js +1 -1
- package/jqwidgets/jqxrating.js +1 -1
- package/jqwidgets/jqxresponsivepanel.js +1 -1
- package/jqwidgets/jqxribbon.js +1 -1
- package/jqwidgets/jqxscheduler.api.js +1 -1
- package/jqwidgets/jqxscheduler.js +2 -2
- package/jqwidgets/jqxscrollbar.js +1 -1
- package/jqwidgets/jqxscrollview.js +1 -1
- package/jqwidgets/jqxslider.js +1 -1
- package/jqwidgets/jqxsortable.js +1 -1
- package/jqwidgets/jqxsplitlayout.js +1 -1
- package/jqwidgets/jqxsplitter.js +1 -1
- package/jqwidgets/jqxswitchbutton.js +1 -1
- package/jqwidgets/jqxtabs.js +1 -1
- package/jqwidgets/jqxtagcloud.js +1 -1
- package/jqwidgets/jqxtextarea.js +1 -1
- package/jqwidgets/jqxtimeline.js +1 -1
- package/jqwidgets/jqxtimepicker.js +1 -1
- package/jqwidgets/jqxtoolbar.js +1 -1
- package/jqwidgets/jqxtooltip.js +1 -1
- package/jqwidgets/jqxtouch.js +1 -1
- package/jqwidgets/jqxtree.js +1 -1
- package/jqwidgets/jqxtreegrid.js +1 -1
- package/jqwidgets/jqxtreemap.js +1 -1
- package/jqwidgets/jqxvalidator.js +1 -1
- package/jqwidgets/jqxwindow.js +2 -2
- package/jqwidgets/modules/jqxbarcode.js +6 -2
- package/jqwidgets/modules/jqxbargauge.js +8 -2
- package/jqwidgets/modules/jqxbulletchart.js +11 -3
- package/jqwidgets/modules/jqxbuttongroup.js +9 -3
- package/jqwidgets/modules/jqxbuttons.js +6 -2
- package/jqwidgets/modules/jqxcalendar.js +11 -3
- package/jqwidgets/modules/jqxchart.js +35 -5
- package/jqwidgets/modules/jqxcheckbox.js +12 -4
- package/jqwidgets/modules/jqxcheckboxgroup.js +12 -4
- package/jqwidgets/modules/jqxcolorpicker.js +15 -5
- package/jqwidgets/modules/jqxcombobox.js +20 -6
- package/jqwidgets/modules/jqxcomplexinput.js +9 -3
- package/jqwidgets/modules/jqxdatatable.js +70 -14
- package/jqwidgets/modules/jqxdatetimeinput.js +36 -10
- package/jqwidgets/modules/jqxdocking.js +19 -5
- package/jqwidgets/modules/jqxdockinglayout.js +30 -8
- package/jqwidgets/modules/jqxdockpanel.js +9 -3
- package/jqwidgets/modules/jqxdragdrop.js +10 -2
- package/jqwidgets/modules/jqxdraw.js +5 -1
- package/jqwidgets/modules/jqxdropdownbutton.js +9 -3
- package/jqwidgets/modules/jqxdropdownlist.js +34 -10
- package/jqwidgets/modules/jqxeditor.js +57 -15
- package/jqwidgets/modules/jqxexpander.js +15 -5
- package/jqwidgets/modules/jqxfileupload.js +12 -4
- package/jqwidgets/modules/jqxform.js +45 -13
- package/jqwidgets/modules/jqxformattedinput.js +35 -11
- package/jqwidgets/modules/jqxgantt.js +6 -2
- package/jqwidgets/modules/jqxgauge.js +14 -4
- package/jqwidgets/modules/jqxgrid.js +652 -571
- package/jqwidgets/modules/jqxheatmap.js +9 -3
- package/jqwidgets/modules/jqxinput.js +11 -3
- package/jqwidgets/modules/jqxkanban.js +47 -13
- package/jqwidgets/modules/jqxknob.js +11 -3
- package/jqwidgets/modules/jqxlayout.js +30 -8
- package/jqwidgets/modules/jqxlineargauge.js +14 -4
- package/jqwidgets/modules/jqxlinkbutton.js +6 -2
- package/jqwidgets/modules/jqxlistbox.js +22 -6
- package/jqwidgets/modules/jqxlistmenu.js +43 -13
- package/jqwidgets/modules/jqxloader.js +6 -2
- package/jqwidgets/modules/jqxmaskedinput.js +6 -2
- package/jqwidgets/modules/jqxmenu.js +20 -6
- package/jqwidgets/modules/jqxnavbar.js +15 -5
- package/jqwidgets/modules/jqxnavigationbar.js +26 -8
- package/jqwidgets/modules/jqxnotification.js +17 -5
- package/jqwidgets/modules/jqxnumberinput.js +26 -8
- package/jqwidgets/modules/jqxpanel.js +14 -4
- package/jqwidgets/modules/jqxpasswordinput.js +16 -4
- package/jqwidgets/modules/jqxpivotdesigner.js +60 -16
- package/jqwidgets/modules/jqxpivotgrid.js +60 -16
- package/jqwidgets/modules/jqxpopover.js +9 -3
- package/jqwidgets/modules/jqxprogressbar.js +6 -2
- package/jqwidgets/modules/jqxqrcode.js +14 -4
- package/jqwidgets/modules/jqxradiobutongroup.js +12 -4
- package/jqwidgets/modules/jqxradiobutton.js +9 -3
- package/jqwidgets/modules/jqxrangeselector.js +11 -3
- package/jqwidgets/modules/jqxrating.js +9 -3
- package/jqwidgets/modules/jqxrepeatbutton.js +6 -2
- package/jqwidgets/modules/jqxresponsivepanel.js +9 -3
- package/jqwidgets/modules/jqxribbon.js +12 -4
- package/jqwidgets/modules/jqxscheduler.js +94 -20
- package/jqwidgets/modules/jqxscrollbar.js +8 -2
- package/jqwidgets/modules/jqxscrollview.js +8 -2
- package/jqwidgets/modules/jqxslider.js +8 -2
- package/jqwidgets/modules/jqxsortable.js +8 -2
- package/jqwidgets/modules/jqxsplitlayout.js +7 -1
- package/jqwidgets/modules/jqxsplitter.js +8 -2
- package/jqwidgets/modules/jqxswitchbutton.js +13 -3
- package/jqwidgets/modules/jqxtabs.js +22 -6
- package/jqwidgets/modules/jqxtagcloud.js +16 -4
- package/jqwidgets/modules/jqxtextarea.js +16 -4
- package/jqwidgets/modules/jqxtimeline.js +6 -2
- package/jqwidgets/modules/jqxtimepicker.js +7 -1
- package/jqwidgets/modules/jqxtogglebutton.js +6 -2
- package/jqwidgets/modules/jqxtoolbar.js +45 -13
- package/jqwidgets/modules/jqxtooltip.js +5 -1
- package/jqwidgets/modules/jqxtree.js +21 -5
- package/jqwidgets/modules/jqxtreegrid.js +72 -14
- package/jqwidgets/modules/jqxtreemap.js +10 -2
- package/jqwidgets/modules/jqxvalidator.js +13 -3
- package/jqwidgets/modules/jqxwindow.js +16 -4
- package/jqwidgets/styles/jqx.base.css +5 -1
- package/package.json +1 -1
- package/schematics/cdk/schematics/index.d.ts +1 -1
- package/schematics/cdk/schematics/index.js +2 -2
- package/schematics/cdk/schematics/index.js.map +1 -0
- package/schematics/cdk/schematics/migration.json +4 -4
- package/schematics/cdk/schematics/ng-add/index.d.ts +1 -1
- package/schematics/cdk/schematics/ng-add/index.js +13 -21
- package/schematics/cdk/schematics/ng-add/index.js.map +1 -0
- package/schematics/cdk/schematics/ng-add/schema.d.ts +1 -1
- package/schematics/cdk/schematics/ng-add/schema.js +2 -2
- package/schematics/cdk/schematics/ng-add/schema.js.map +1 -0
- package/schematics/cdk/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +6 -2
- package/schematics/cdk/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +1 -1
- package/schematics/cdk/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +5 -5
- package/schematics/cdk/schematics/ng-generate/drag-drop/index.d.ts +1 -1
- package/schematics/cdk/schematics/ng-generate/drag-drop/index.js +17 -8
- package/schematics/cdk/schematics/ng-generate/drag-drop/index.js.map +1 -0
- package/schematics/cdk/schematics/ng-generate/drag-drop/schema.d.ts +1 -1
- package/schematics/cdk/schematics/ng-generate/drag-drop/schema.js +2 -2
- package/schematics/cdk/schematics/ng-generate/drag-drop/schema.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/attribute-selectors.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/data/attribute-selectors.js +2 -2
- package/schematics/cdk/schematics/ng-update/data/attribute-selectors.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/class-names.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/data/class-names.js +2 -2
- package/schematics/cdk/schematics/ng-update/data/class-names.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/constructor-checks.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/data/constructor-checks.js +2 -2
- package/schematics/cdk/schematics/ng-update/data/constructor-checks.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/css-selectors.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/data/css-selectors.js +2 -2
- package/schematics/cdk/schematics/ng-update/data/css-selectors.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/css-tokens.d.ts +27 -0
- package/schematics/cdk/schematics/ng-update/data/css-tokens.js +12 -0
- package/schematics/cdk/schematics/ng-update/data/css-tokens.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/element-selectors.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/data/element-selectors.js +2 -2
- package/schematics/cdk/schematics/ng-update/data/element-selectors.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/index.d.ts +2 -1
- package/schematics/cdk/schematics/ng-update/data/index.js +3 -2
- package/schematics/cdk/schematics/ng-update/data/index.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/input-names.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/data/input-names.js +2 -2
- package/schematics/cdk/schematics/ng-update/data/input-names.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/method-call-checks.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/data/method-call-checks.js +2 -2
- package/schematics/cdk/schematics/ng-update/data/method-call-checks.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/output-names.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/data/output-names.js +2 -2
- package/schematics/cdk/schematics/ng-update/data/output-names.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/property-names.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/data/property-names.js +2 -2
- package/schematics/cdk/schematics/ng-update/data/property-names.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/data/symbol-removal.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/data/symbol-removal.js +2 -2
- package/schematics/cdk/schematics/ng-update/data/symbol-removal.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/devkit-file-system.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/devkit-file-system.js +3 -4
- package/schematics/cdk/schematics/ng-update/devkit-file-system.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/devkit-migration-rule.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/devkit-migration-rule.js +19 -8
- package/schematics/cdk/schematics/ng-update/devkit-migration-rule.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/devkit-migration.d.ts +3 -3
- package/schematics/cdk/schematics/ng-update/devkit-migration.js +2 -2
- package/schematics/cdk/schematics/ng-update/devkit-migration.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/find-stylesheets.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/find-stylesheets.js +3 -4
- package/schematics/cdk/schematics/ng-update/find-stylesheets.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/html-parsing/angular.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/html-parsing/angular.js +7 -8
- package/schematics/cdk/schematics/ng-update/html-parsing/angular.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/html-parsing/elements.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/html-parsing/elements.js +8 -8
- package/schematics/cdk/schematics/ng-update/html-parsing/elements.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/index.d.ts +3 -3
- package/schematics/cdk/schematics/ng-update/index.js +6 -7
- package/schematics/cdk/schematics/ng-update/index.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/attribute-selectors.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/attribute-selectors.js +9 -6
- package/schematics/cdk/schematics/ng-update/migrations/attribute-selectors.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/class-inheritance.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/class-inheritance.js +12 -9
- package/schematics/cdk/schematics/ng-update/migrations/class-inheritance.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/class-names.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/class-names.js +16 -13
- package/schematics/cdk/schematics/ng-update/migrations/class-names.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/constructor-signature.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/constructor-signature.js +11 -8
- package/schematics/cdk/schematics/ng-update/migrations/constructor-signature.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/css-selectors.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/css-selectors.js +9 -6
- package/schematics/cdk/schematics/ng-update/migrations/css-selectors.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/css-tokens.d.ts +26 -0
- package/schematics/cdk/schematics/ng-update/migrations/css-tokens.js +83 -0
- package/schematics/cdk/schematics/ng-update/migrations/css-tokens.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/element-selectors.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/element-selectors.js +9 -6
- package/schematics/cdk/schematics/ng-update/migrations/element-selectors.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/input-names.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/input-names.js +9 -6
- package/schematics/cdk/schematics/ng-update/migrations/input-names.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/method-call-arguments.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/method-call-arguments.js +9 -6
- package/schematics/cdk/schematics/ng-update/migrations/method-call-arguments.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/misc-template.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/misc-template.js +7 -4
- package/schematics/cdk/schematics/ng-update/migrations/misc-template.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/output-names.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/output-names.js +9 -6
- package/schematics/cdk/schematics/ng-update/migrations/output-names.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/property-names.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/property-names.js +9 -6
- package/schematics/cdk/schematics/ng-update/migrations/property-names.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/migrations/symbol-removal.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/migrations/symbol-removal.js +11 -7
- package/schematics/cdk/schematics/ng-update/migrations/symbol-removal.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/public-api.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/public-api.js +2 -2
- package/schematics/cdk/schematics/ng-update/public-api.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/typescript/base-types.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/typescript/base-types.js +3 -4
- package/schematics/cdk/schematics/ng-update/typescript/base-types.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/typescript/imports.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/typescript/imports.js +7 -8
- package/schematics/cdk/schematics/ng-update/typescript/imports.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/typescript/literal.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/typescript/literal.js +4 -5
- package/schematics/cdk/schematics/ng-update/typescript/literal.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/typescript/module-specifiers.d.ts +1 -1
- package/schematics/cdk/schematics/ng-update/typescript/module-specifiers.js +5 -5
- package/schematics/cdk/schematics/ng-update/typescript/module-specifiers.js.map +1 -0
- package/schematics/cdk/schematics/ng-update/upgrade-data.d.ts +3 -2
- package/schematics/cdk/schematics/ng-update/upgrade-data.js +5 -4
- package/schematics/cdk/schematics/ng-update/upgrade-data.js.map +1 -0
- package/schematics/cdk/schematics/paths.d.ts +1 -1
- package/schematics/cdk/schematics/paths.js +2 -2
- package/schematics/cdk/schematics/paths.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/component-resource-collector.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/component-resource-collector.js +4 -6
- package/schematics/cdk/schematics/update-tool/component-resource-collector.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/file-system.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/file-system.js +2 -2
- package/schematics/cdk/schematics/update-tool/file-system.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/index.d.ts +2 -2
- package/schematics/cdk/schematics/update-tool/index.js +4 -10
- package/schematics/cdk/schematics/update-tool/index.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/logger.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/logger.js +2 -2
- package/schematics/cdk/schematics/update-tool/logger.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/migration.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/migration.js +4 -11
- package/schematics/cdk/schematics/update-tool/migration.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/public-api.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/public-api.js +2 -2
- package/schematics/cdk/schematics/update-tool/public-api.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/target-version.d.ts +2 -2
- package/schematics/cdk/schematics/update-tool/target-version.js +5 -6
- package/schematics/cdk/schematics/update-tool/target-version.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/update-recorder.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/update-recorder.js +2 -2
- package/schematics/cdk/schematics/update-tool/update-recorder.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/utils/decorators.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/utils/decorators.js +4 -5
- package/schematics/cdk/schematics/update-tool/utils/decorators.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/utils/diagnostics.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/utils/diagnostics.js +3 -4
- package/schematics/cdk/schematics/update-tool/utils/diagnostics.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/utils/functions.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/utils/functions.js +3 -4
- package/schematics/cdk/schematics/update-tool/utils/functions.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/utils/imports.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/utils/imports.js +3 -4
- package/schematics/cdk/schematics/update-tool/utils/imports.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/utils/line-mappings.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/utils/line-mappings.js +4 -5
- package/schematics/cdk/schematics/update-tool/utils/line-mappings.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/utils/parse-tsconfig.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/utils/parse-tsconfig.js +4 -4
- package/schematics/cdk/schematics/update-tool/utils/parse-tsconfig.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/utils/property-name.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/utils/property-name.js +4 -5
- package/schematics/cdk/schematics/update-tool/utils/property-name.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/utils/virtual-host.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/utils/virtual-host.js +6 -7
- package/schematics/cdk/schematics/update-tool/utils/virtual-host.js.map +1 -0
- package/schematics/cdk/schematics/update-tool/version-changes.d.ts +1 -1
- package/schematics/cdk/schematics/update-tool/version-changes.js +4 -5
- package/schematics/cdk/schematics/update-tool/version-changes.js.map +1 -0
- package/schematics/cdk/schematics/utils/ast/ng-module-imports.d.ts +1 -1
- package/schematics/cdk/schematics/utils/ast/ng-module-imports.js +3 -4
- package/schematics/cdk/schematics/utils/ast/ng-module-imports.js.map +1 -0
- package/schematics/cdk/schematics/utils/ast.d.ts +3 -3
- package/schematics/cdk/schematics/utils/ast.js +28 -18
- package/schematics/cdk/schematics/utils/ast.js.map +1 -0
- package/schematics/cdk/schematics/utils/build-component.d.ts +1 -1
- package/schematics/cdk/schematics/utils/build-component.js +24 -20
- package/schematics/cdk/schematics/utils/build-component.js.map +1 -0
- package/schematics/cdk/schematics/utils/get-project.d.ts +3 -3
- package/schematics/cdk/schematics/utils/get-project.js +3 -4
- package/schematics/cdk/schematics/utils/get-project.js.map +1 -0
- package/schematics/cdk/schematics/utils/html-manipulation.d.ts +1 -1
- package/schematics/cdk/schematics/utils/html-manipulation.js +5 -6
- package/schematics/cdk/schematics/utils/html-manipulation.js.map +1 -0
- package/schematics/cdk/schematics/utils/index.d.ts +1 -1
- package/schematics/cdk/schematics/utils/index.js +2 -2
- package/schematics/cdk/schematics/utils/index.js.map +1 -0
- package/schematics/cdk/schematics/utils/parse5-element.d.ts +1 -1
- package/schematics/cdk/schematics/utils/parse5-element.js +3 -4
- package/schematics/cdk/schematics/utils/parse5-element.js.map +1 -0
- package/schematics/cdk/schematics/utils/project-index-file.d.ts +7 -4
- package/schematics/cdk/schematics/utils/project-index-file.js +32 -10
- package/schematics/cdk/schematics/utils/project-index-file.js.map +1 -0
- package/schematics/cdk/schematics/utils/project-main-file.d.ts +4 -3
- package/schematics/cdk/schematics/utils/project-main-file.js +3 -4
- package/schematics/cdk/schematics/utils/project-main-file.js.map +1 -0
- package/schematics/cdk/schematics/utils/project-style-file.d.ts +3 -3
- package/schematics/cdk/schematics/utils/project-style-file.js +3 -4
- package/schematics/cdk/schematics/utils/project-style-file.js.map +1 -0
- package/schematics/cdk/schematics/utils/project-targets.d.ts +6 -5
- package/schematics/cdk/schematics/utils/project-targets.js +19 -12
- package/schematics/cdk/schematics/utils/project-targets.js.map +1 -0
- package/schematics/cdk/schematics/utils/project-tsconfig-paths.d.ts +4 -4
- package/schematics/cdk/schematics/utils/project-tsconfig-paths.js +29 -18
- package/schematics/cdk/schematics/utils/project-tsconfig-paths.js.map +1 -0
- package/schematics/cdk/schematics/utils/schematic-options.d.ts +3 -3
- package/schematics/cdk/schematics/utils/schematic-options.js +30 -19
- package/schematics/cdk/schematics/utils/schematic-options.js.map +1 -0
- package/schematics/cdk2/schematics/collection.json +18 -0
- package/schematics/cdk2/schematics/index.d.ts +14 -0
- package/schematics/cdk2/schematics/index.mjs +37 -0
- package/schematics/cdk2/schematics/migration.json +15 -0
- package/schematics/cdk2/schematics/ng-add/index.d.ts +17 -0
- package/schematics/cdk2/schematics/ng-add/index.mjs +39 -0
- package/schematics/cdk2/schematics/ng-add/schema.d.ts +11 -0
- package/schematics/cdk2/schematics/ng-add/schema.json +16 -0
- package/schematics/cdk2/schematics/ng-add/schema.mjs +10 -0
- package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.__style__.template +53 -0
- package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +17 -0
- package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +25 -0
- package/schematics/cdk2/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +45 -0
- package/schematics/cdk2/schematics/ng-generate/drag-drop/index.d.ts +11 -0
- package/schematics/cdk2/schematics/ng-generate/drag-drop/index.mjs +33 -0
- package/schematics/cdk2/schematics/ng-generate/drag-drop/schema.d.ts +10 -0
- package/schematics/cdk2/schematics/ng-generate/drag-drop/schema.json +100 -0
- package/schematics/cdk2/schematics/ng-generate/drag-drop/schema.mjs +10 -0
- package/schematics/cdk2/schematics/ng-update/data/attribute-selectors.d.ts +15 -0
- package/schematics/cdk2/schematics/ng-update/data/attribute-selectors.mjs +12 -0
- package/schematics/cdk2/schematics/ng-update/data/class-names.d.ts +15 -0
- package/schematics/cdk2/schematics/ng-update/data/class-names.mjs +12 -0
- package/schematics/cdk2/schematics/ng-update/data/constructor-checks.d.ts +15 -0
- package/schematics/cdk2/schematics/ng-update/data/constructor-checks.mjs +17 -0
- package/schematics/cdk2/schematics/ng-update/data/css-selectors.d.ts +27 -0
- package/schematics/cdk2/schematics/ng-update/data/css-selectors.mjs +12 -0
- package/schematics/cdk2/schematics/ng-update/data/element-selectors.d.ts +15 -0
- package/schematics/cdk2/schematics/ng-update/data/element-selectors.mjs +12 -0
- package/schematics/cdk2/schematics/ng-update/data/index.d.ts +17 -0
- package/schematics/cdk2/schematics/ng-update/data/index.mjs +34 -0
- package/schematics/cdk2/schematics/ng-update/data/input-names.d.ts +22 -0
- package/schematics/cdk2/schematics/ng-update/data/input-names.mjs +12 -0
- package/schematics/cdk2/schematics/ng-update/data/method-call-checks.d.ts +17 -0
- package/schematics/cdk2/schematics/ng-update/data/method-call-checks.mjs +12 -0
- package/schematics/cdk2/schematics/ng-update/data/output-names.d.ts +22 -0
- package/schematics/cdk2/schematics/ng-update/data/output-names.mjs +12 -0
- package/schematics/cdk2/schematics/ng-update/data/property-names.d.ts +20 -0
- package/schematics/cdk2/schematics/ng-update/data/property-names.mjs +12 -0
- package/schematics/cdk2/schematics/ng-update/data/symbol-removal.d.ts +17 -0
- package/schematics/cdk2/schematics/ng-update/data/symbol-removal.mjs +12 -0
- package/schematics/cdk2/schematics/ng-update/devkit-file-system.d.ts +30 -0
- package/schematics/cdk2/schematics/ng-update/devkit-file-system.mjs +84 -0
- package/schematics/cdk2/schematics/ng-update/devkit-migration-rule.d.ts +24 -0
- package/schematics/cdk2/schematics/ng-update/devkit-migration-rule.mjs +131 -0
- package/schematics/cdk2/schematics/ng-update/devkit-migration.d.ts +35 -0
- package/schematics/cdk2/schematics/ng-update/devkit-migration.mjs +20 -0
- package/schematics/cdk2/schematics/ng-update/find-stylesheets.d.ts +16 -0
- package/schematics/cdk2/schematics/ng-update/find-stylesheets.mjs +42 -0
- package/schematics/cdk2/schematics/ng-update/html-parsing/angular.d.ts +15 -0
- package/schematics/cdk2/schematics/ng-update/html-parsing/angular.mjs +52 -0
- package/schematics/cdk2/schematics/ng-update/html-parsing/elements.d.ts +24 -0
- package/schematics/cdk2/schematics/ng-update/html-parsing/elements.mjs +63 -0
- package/schematics/cdk2/schematics/ng-update/index.d.ts +10 -0
- package/schematics/cdk2/schematics/ng-update/index.mjs +30 -0
- package/schematics/cdk2/schematics/ng-update/migrations/attribute-selectors.d.ts +26 -0
- package/schematics/cdk2/schematics/ng-update/migrations/attribute-selectors.mjs +68 -0
- package/schematics/cdk2/schematics/ng-update/migrations/class-inheritance.d.ts +26 -0
- package/schematics/cdk2/schematics/ng-update/migrations/class-inheritance.mjs +55 -0
- package/schematics/cdk2/schematics/ng-update/migrations/class-names.d.ts +32 -0
- package/schematics/cdk2/schematics/ng-update/migrations/class-names.mjs +88 -0
- package/schematics/cdk2/schematics/ng-update/migrations/constructor-signature.d.ts +29 -0
- package/schematics/cdk2/schematics/ng-update/migrations/constructor-signature.mjs +136 -0
- package/schematics/cdk2/schematics/ng-update/migrations/css-selectors.d.ts +26 -0
- package/schematics/cdk2/schematics/ng-update/migrations/css-selectors.mjs +72 -0
- package/schematics/cdk2/schematics/ng-update/migrations/element-selectors.d.ts +26 -0
- package/schematics/cdk2/schematics/ng-update/migrations/element-selectors.mjs +63 -0
- package/schematics/cdk2/schematics/ng-update/migrations/input-names.d.ts +26 -0
- package/schematics/cdk2/schematics/ng-update/migrations/input-names.mjs +56 -0
- package/schematics/cdk2/schematics/ng-update/migrations/method-call-arguments.d.ts +22 -0
- package/schematics/cdk2/schematics/ng-update/migrations/method-call-arguments.mjs +59 -0
- package/schematics/cdk2/schematics/ng-update/migrations/misc-template.d.ts +18 -0
- package/schematics/cdk2/schematics/ng-update/migrations/misc-template.mjs +22 -0
- package/schematics/cdk2/schematics/ng-update/migrations/output-names.d.ts +22 -0
- package/schematics/cdk2/schematics/ng-update/migrations/output-names.mjs +43 -0
- package/schematics/cdk2/schematics/ng-update/migrations/property-names.d.ts +22 -0
- package/schematics/cdk2/schematics/ng-update/migrations/property-names.mjs +57 -0
- package/schematics/cdk2/schematics/ng-update/migrations/symbol-removal.d.ts +18 -0
- package/schematics/cdk2/schematics/ng-update/migrations/symbol-removal.mjs +43 -0
- package/schematics/cdk2/schematics/ng-update/public-api.d.ts +19 -0
- package/schematics/cdk2/schematics/ng-update/public-api.mjs +36 -0
- package/schematics/cdk2/schematics/ng-update/typescript/base-types.d.ts +10 -0
- package/schematics/cdk2/schematics/ng-update/typescript/base-types.mjs +24 -0
- package/schematics/cdk2/schematics/ng-update/typescript/imports.d.ts +18 -0
- package/schematics/cdk2/schematics/ng-update/typescript/imports.mjs +54 -0
- package/schematics/cdk2/schematics/ng-update/typescript/literal.d.ts +18 -0
- package/schematics/cdk2/schematics/ng-update/typescript/literal.mjs +33 -0
- package/schematics/cdk2/schematics/ng-update/typescript/module-specifiers.d.ts +16 -0
- package/schematics/cdk2/schematics/ng-update/typescript/module-specifiers.mjs +35 -0
- package/schematics/cdk2/schematics/ng-update/upgrade-data.d.ts +34 -0
- package/schematics/cdk2/schematics/ng-update/upgrade-data.mjs +39 -0
- package/schematics/cdk2/schematics/package.json +3 -0
- package/schematics/cdk2/schematics/paths.d.ts +11 -0
- package/schematics/cdk2/schematics/paths.mjs +16 -0
- package/schematics/cdk2/schematics/update-tool/component-resource-collector.d.ts +44 -0
- package/schematics/cdk2/schematics/update-tool/component-resource-collector.mjs +166 -0
- package/schematics/cdk2/schematics/update-tool/file-system.d.ts +72 -0
- package/schematics/cdk2/schematics/update-tool/file-system.mjs +18 -0
- package/schematics/cdk2/schematics/update-tool/index.d.ts +74 -0
- package/schematics/cdk2/schematics/update-tool/index.mjs +178 -0
- package/schematics/cdk2/schematics/update-tool/logger.d.ts +15 -0
- package/schematics/cdk2/schematics/update-tool/logger.mjs +18 -0
- package/schematics/cdk2/schematics/update-tool/migration.d.ts +87 -0
- package/schematics/cdk2/schematics/update-tool/migration.mjs +77 -0
- package/schematics/cdk2/schematics/update-tool/public-api.d.ts +16 -0
- package/schematics/cdk2/schematics/update-tool/public-api.mjs +33 -0
- package/schematics/cdk2/schematics/update-tool/target-version.d.ts +16 -0
- package/schematics/cdk2/schematics/update-tool/target-version.mjs +28 -0
- package/schematics/cdk2/schematics/update-tool/update-recorder.d.ts +13 -0
- package/schematics/cdk2/schematics/update-tool/update-recorder.mjs +10 -0
- package/schematics/cdk2/schematics/update-tool/utils/decorators.d.ts +22 -0
- package/schematics/cdk2/schematics/update-tool/utils/decorators.mjs +42 -0
- package/schematics/cdk2/schematics/update-tool/utils/diagnostics.d.ts +11 -0
- package/schematics/cdk2/schematics/update-tool/utils/diagnostics.mjs +19 -0
- package/schematics/cdk2/schematics/update-tool/utils/functions.d.ts +14 -0
- package/schematics/cdk2/schematics/update-tool/utils/functions.mjs +21 -0
- package/schematics/cdk2/schematics/update-tool/utils/imports.d.ts +17 -0
- package/schematics/cdk2/schematics/update-tool/utils/imports.mjs +111 -0
- package/schematics/cdk2/schematics/update-tool/utils/line-mappings.d.ts +21 -0
- package/schematics/cdk2/schematics/update-tool/utils/line-mappings.mjs +76 -0
- package/schematics/cdk2/schematics/update-tool/utils/parse-tsconfig.d.ts +18 -0
- package/schematics/cdk2/schematics/update-tool/utils/parse-tsconfig.mjs +45 -0
- package/schematics/cdk2/schematics/update-tool/utils/property-name.d.ts +18 -0
- package/schematics/cdk2/schematics/update-tool/utils/property-name.mjs +28 -0
- package/schematics/cdk2/schematics/update-tool/utils/virtual-host.d.ts +36 -0
- package/schematics/cdk2/schematics/update-tool/utils/virtual-host.mjs +72 -0
- package/schematics/cdk2/schematics/update-tool/version-changes.d.ts +32 -0
- package/schematics/cdk2/schematics/update-tool/version-changes.mjs +39 -0
- package/schematics/cdk2/schematics/utils/ast/ng-module-imports.d.ts +12 -0
- package/schematics/cdk2/schematics/utils/ast/ng-module-imports.mjs +83 -0
- package/schematics/cdk2/schematics/utils/ast.d.ts +25 -0
- package/schematics/cdk2/schematics/utils/ast.mjs +69 -0
- package/schematics/cdk2/schematics/utils/build-component.d.ts +20 -0
- package/schematics/cdk2/schematics/utils/build-component.mjs +184 -0
- package/schematics/cdk2/schematics/utils/get-project.d.ts +13 -0
- package/schematics/cdk2/schematics/utils/get-project.mjs +29 -0
- package/schematics/cdk2/schematics/utils/html-manipulation.d.ts +15 -0
- package/schematics/cdk2/schematics/utils/html-manipulation.mjs +92 -0
- package/schematics/cdk2/schematics/utils/index.d.ts +19 -0
- package/schematics/cdk2/schematics/utils/index.mjs +36 -0
- package/schematics/cdk2/schematics/utils/parse5-element.d.ts +12 -0
- package/schematics/cdk2/schematics/utils/parse5-element.mjs +31 -0
- package/schematics/cdk2/schematics/utils/project-index-file.d.ts +10 -0
- package/schematics/cdk2/schematics/utils/project-index-file.mjs +21 -0
- package/schematics/cdk2/schematics/utils/project-main-file.d.ts +10 -0
- package/schematics/cdk2/schematics/utils/project-main-file.mjs +26 -0
- package/schematics/cdk2/schematics/utils/project-style-file.d.ts +13 -0
- package/schematics/cdk2/schematics/utils/project-style-file.mjs +43 -0
- package/schematics/cdk2/schematics/utils/project-targets.d.ts +14 -0
- package/schematics/cdk2/schematics/utils/project-targets.mjs +39 -0
- package/schematics/cdk2/schematics/utils/project-tsconfig-paths.d.ts +14 -0
- package/schematics/cdk2/schematics/utils/project-tsconfig-paths.mjs +35 -0
- package/schematics/cdk2/schematics/utils/schematic-options.d.ts +20 -0
- package/schematics/cdk2/schematics/utils/schematic-options.mjs +78 -0
- /package/schematics/{cdk/schematics/index.mjs → cdk2/schematics/index.js} +0 -0
- /package/schematics/{cdk/schematics/ng-add/index.mjs → cdk2/schematics/ng-add/index.js} +0 -0
- /package/schematics/{cdk → cdk2}/schematics/ng-add/package-config.d.ts +0 -0
- /package/schematics/{cdk → cdk2}/schematics/ng-add/package-config.js +0 -0
- /package/schematics/{cdk → cdk2}/schematics/ng-add/package-config.mjs +0 -0
- /package/schematics/{cdk/schematics/ng-add/schema.mjs → cdk2/schematics/ng-add/schema.js} +0 -0
- /package/schematics/{cdk/schematics/ng-generate/drag-drop/index.mjs → cdk2/schematics/ng-generate/drag-drop/index.js} +0 -0
- /package/schematics/{cdk/schematics/ng-generate/drag-drop/schema.mjs → cdk2/schematics/ng-generate/drag-drop/schema.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/attribute-selectors.mjs → cdk2/schematics/ng-update/data/attribute-selectors.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/class-names.mjs → cdk2/schematics/ng-update/data/class-names.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/constructor-checks.mjs → cdk2/schematics/ng-update/data/constructor-checks.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/css-selectors.mjs → cdk2/schematics/ng-update/data/css-selectors.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/element-selectors.mjs → cdk2/schematics/ng-update/data/element-selectors.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/index.mjs → cdk2/schematics/ng-update/data/index.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/input-names.mjs → cdk2/schematics/ng-update/data/input-names.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/method-call-checks.mjs → cdk2/schematics/ng-update/data/method-call-checks.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/output-names.mjs → cdk2/schematics/ng-update/data/output-names.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/property-names.mjs → cdk2/schematics/ng-update/data/property-names.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/data/symbol-removal.mjs → cdk2/schematics/ng-update/data/symbol-removal.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/devkit-file-system.mjs → cdk2/schematics/ng-update/devkit-file-system.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/devkit-migration-rule.mjs → cdk2/schematics/ng-update/devkit-migration-rule.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/devkit-migration.mjs → cdk2/schematics/ng-update/devkit-migration.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/find-stylesheets.mjs → cdk2/schematics/ng-update/find-stylesheets.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/html-parsing/angular.mjs → cdk2/schematics/ng-update/html-parsing/angular.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/html-parsing/elements.mjs → cdk2/schematics/ng-update/html-parsing/elements.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/index.mjs → cdk2/schematics/ng-update/index.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/attribute-selectors.mjs → cdk2/schematics/ng-update/migrations/attribute-selectors.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/class-inheritance.mjs → cdk2/schematics/ng-update/migrations/class-inheritance.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/class-names.mjs → cdk2/schematics/ng-update/migrations/class-names.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/constructor-signature.mjs → cdk2/schematics/ng-update/migrations/constructor-signature.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/css-selectors.mjs → cdk2/schematics/ng-update/migrations/css-selectors.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/element-selectors.mjs → cdk2/schematics/ng-update/migrations/element-selectors.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/input-names.mjs → cdk2/schematics/ng-update/migrations/input-names.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/method-call-arguments.mjs → cdk2/schematics/ng-update/migrations/method-call-arguments.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/misc-template.mjs → cdk2/schematics/ng-update/migrations/misc-template.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/output-names.mjs → cdk2/schematics/ng-update/migrations/output-names.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/property-names.mjs → cdk2/schematics/ng-update/migrations/property-names.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/migrations/symbol-removal.mjs → cdk2/schematics/ng-update/migrations/symbol-removal.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/public-api.mjs → cdk2/schematics/ng-update/public-api.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/typescript/base-types.mjs → cdk2/schematics/ng-update/typescript/base-types.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/typescript/imports.mjs → cdk2/schematics/ng-update/typescript/imports.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/typescript/literal.mjs → cdk2/schematics/ng-update/typescript/literal.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/typescript/module-specifiers.mjs → cdk2/schematics/ng-update/typescript/module-specifiers.js} +0 -0
- /package/schematics/{cdk/schematics/ng-update/upgrade-data.mjs → cdk2/schematics/ng-update/upgrade-data.js} +0 -0
- /package/schematics/{cdk/schematics/paths.mjs → cdk2/schematics/paths.js} +0 -0
- /package/schematics/{cdk → cdk2}/schematics/schematics.externs.js +0 -0
- /package/schematics/{cdk → cdk2}/schematics/tsconfig.json +0 -0
- /package/schematics/{cdk/schematics/update-tool/component-resource-collector.mjs → cdk2/schematics/update-tool/component-resource-collector.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/file-system.mjs → cdk2/schematics/update-tool/file-system.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/index.mjs → cdk2/schematics/update-tool/index.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/logger.mjs → cdk2/schematics/update-tool/logger.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/migration.mjs → cdk2/schematics/update-tool/migration.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/public-api.mjs → cdk2/schematics/update-tool/public-api.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/target-version.mjs → cdk2/schematics/update-tool/target-version.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/update-recorder.mjs → cdk2/schematics/update-tool/update-recorder.js} +0 -0
- /package/schematics/{cdk → cdk2}/schematics/update-tool/update-tool.externs.js +0 -0
- /package/schematics/{cdk/schematics/update-tool/utils/decorators.mjs → cdk2/schematics/update-tool/utils/decorators.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/utils/diagnostics.mjs → cdk2/schematics/update-tool/utils/diagnostics.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/utils/functions.mjs → cdk2/schematics/update-tool/utils/functions.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/utils/imports.mjs → cdk2/schematics/update-tool/utils/imports.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/utils/line-mappings.mjs → cdk2/schematics/update-tool/utils/line-mappings.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/utils/parse-tsconfig.mjs → cdk2/schematics/update-tool/utils/parse-tsconfig.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/utils/property-name.mjs → cdk2/schematics/update-tool/utils/property-name.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/utils/virtual-host.mjs → cdk2/schematics/update-tool/utils/virtual-host.js} +0 -0
- /package/schematics/{cdk/schematics/update-tool/version-changes.mjs → cdk2/schematics/update-tool/version-changes.js} +0 -0
- /package/schematics/{cdk/schematics/utils/ast/ng-module-imports.mjs → cdk2/schematics/utils/ast/ng-module-imports.js} +0 -0
- /package/schematics/{cdk/schematics/utils/ast.mjs → cdk2/schematics/utils/ast.js} +0 -0
- /package/schematics/{cdk/schematics/utils/build-component.mjs → cdk2/schematics/utils/build-component.js} +0 -0
- /package/schematics/{cdk/schematics/utils/get-project.mjs → cdk2/schematics/utils/get-project.js} +0 -0
- /package/schematics/{cdk/schematics/utils/html-manipulation.mjs → cdk2/schematics/utils/html-manipulation.js} +0 -0
- /package/schematics/{cdk/schematics/utils/index.mjs → cdk2/schematics/utils/index.js} +0 -0
- /package/schematics/{cdk/schematics/utils/parse5-element.mjs → cdk2/schematics/utils/parse5-element.js} +0 -0
- /package/schematics/{cdk/schematics/utils/project-index-file.mjs → cdk2/schematics/utils/project-index-file.js} +0 -0
- /package/schematics/{cdk/schematics/utils/project-main-file.mjs → cdk2/schematics/utils/project-main-file.js} +0 -0
- /package/schematics/{cdk/schematics/utils/project-style-file.mjs → cdk2/schematics/utils/project-style-file.js} +0 -0
- /package/schematics/{cdk/schematics/utils/project-targets.mjs → cdk2/schematics/utils/project-targets.js} +0 -0
- /package/schematics/{cdk/schematics/utils/project-tsconfig-paths.mjs → cdk2/schematics/utils/project-tsconfig-paths.js} +0 -0
- /package/schematics/{cdk/schematics/utils/schematic-options.mjs → cdk2/schematics/utils/schematic-options.js} +0 -0
|
@@ -0,0 +1,39 @@
|
|
|
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
|
+
exports.getVersionUpgradeData = exports.cdkUpgradeData = void 0;
|
|
11
|
+
const version_changes_1 = require("../update-tool/version-changes");
|
|
12
|
+
const data_1 = require("./data");
|
|
13
|
+
/** Upgrade data for the Angular CDK. */
|
|
14
|
+
exports.cdkUpgradeData = {
|
|
15
|
+
attributeSelectors: data_1.attributeSelectors,
|
|
16
|
+
classNames: data_1.classNames,
|
|
17
|
+
constructorChecks: data_1.constructorChecks,
|
|
18
|
+
cssSelectors: data_1.cssSelectors,
|
|
19
|
+
elementSelectors: data_1.elementSelectors,
|
|
20
|
+
inputNames: data_1.inputNames,
|
|
21
|
+
methodCallChecks: data_1.methodCallChecks,
|
|
22
|
+
outputNames: data_1.outputNames,
|
|
23
|
+
propertyNames: data_1.propertyNames,
|
|
24
|
+
symbolRemoval: data_1.symbolRemoval,
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Gets the reduced upgrade data for the specified data key. The function reads out the
|
|
28
|
+
* target version and upgrade data object from the migration and resolves the specified
|
|
29
|
+
* data portion that is specifically tied to the target version.
|
|
30
|
+
*/
|
|
31
|
+
function getVersionUpgradeData(migration, dataName) {
|
|
32
|
+
if (migration.targetVersion === null) {
|
|
33
|
+
return [];
|
|
34
|
+
}
|
|
35
|
+
// Note that below we need to cast to `unknown` first TS doesn't infer the type of T correctly.
|
|
36
|
+
return (0, version_changes_1.getChangesForTarget)(migration.targetVersion, migration.upgradeData[dataName]);
|
|
37
|
+
}
|
|
38
|
+
exports.getVersionUpgradeData = getVersionUpgradeData;
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBncmFkZS1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL25nLXVwZGF0ZS91cGdyYWRlLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBR0gsb0VBQW1HO0FBQ25HLGlDQXFCZ0I7QUFFaEIsd0NBQXdDO0FBQzNCLFFBQUEsY0FBYyxHQUFnQjtJQUN6QyxrQkFBa0IsRUFBbEIseUJBQWtCO0lBQ2xCLFVBQVUsRUFBVixpQkFBVTtJQUNWLGlCQUFpQixFQUFqQix3QkFBaUI7SUFDakIsWUFBWSxFQUFaLG1CQUFZO0lBQ1osZ0JBQWdCLEVBQWhCLHVCQUFnQjtJQUNoQixVQUFVLEVBQVYsaUJBQVU7SUFDVixnQkFBZ0IsRUFBaEIsdUJBQWdCO0lBQ2hCLFdBQVcsRUFBWCxrQkFBVztJQUNYLGFBQWEsRUFBYixvQkFBYTtJQUNiLGFBQWEsRUFBYixvQkFBYTtDQUNkLENBQUM7QUFtQkY7Ozs7R0FJRztBQUNILFNBQWdCLHFCQUFxQixDQUduQyxTQUFpQyxFQUFFLFFBQVc7SUFDOUMsSUFBSSxTQUFTLENBQUMsYUFBYSxLQUFLLElBQUksRUFBRTtRQUNwQyxPQUFPLEVBQUUsQ0FBQztLQUNYO0lBRUQsK0ZBQStGO0lBQy9GLE9BQU8sSUFBQSxxQ0FBbUIsRUFDeEIsU0FBUyxDQUFDLGFBQWEsRUFDdkIsU0FBUyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQWlDLENBQ2hFLENBQUM7QUFDSixDQUFDO0FBYkQsc0RBYUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtNaWdyYXRpb259IGZyb20gJy4uL3VwZGF0ZS10b29sL21pZ3JhdGlvbic7XG5pbXBvcnQge2dldENoYW5nZXNGb3JUYXJnZXQsIFZhbHVlT2ZDaGFuZ2VzLCBWZXJzaW9uQ2hhbmdlc30gZnJvbSAnLi4vdXBkYXRlLXRvb2wvdmVyc2lvbi1jaGFuZ2VzJztcbmltcG9ydCB7XG4gIGF0dHJpYnV0ZVNlbGVjdG9ycyxcbiAgQXR0cmlidXRlU2VsZWN0b3JVcGdyYWRlRGF0YSxcbiAgY2xhc3NOYW1lcyxcbiAgQ2xhc3NOYW1lVXBncmFkZURhdGEsXG4gIGNvbnN0cnVjdG9yQ2hlY2tzLFxuICBDb25zdHJ1Y3RvckNoZWNrc1VwZ3JhZGVEYXRhLFxuICBjc3NTZWxlY3RvcnMsXG4gIENzc1NlbGVjdG9yVXBncmFkZURhdGEsXG4gIGVsZW1lbnRTZWxlY3RvcnMsXG4gIEVsZW1lbnRTZWxlY3RvclVwZ3JhZGVEYXRhLFxuICBpbnB1dE5hbWVzLFxuICBJbnB1dE5hbWVVcGdyYWRlRGF0YSxcbiAgbWV0aG9kQ2FsbENoZWNrcyxcbiAgTWV0aG9kQ2FsbFVwZ3JhZGVEYXRhLFxuICBvdXRwdXROYW1lcyxcbiAgT3V0cHV0TmFtZVVwZ3JhZGVEYXRhLFxuICBwcm9wZXJ0eU5hbWVzLFxuICBQcm9wZXJ0eU5hbWVVcGdyYWRlRGF0YSxcbiAgU3ltYm9sUmVtb3ZhbFVwZ3JhZGVEYXRhLFxuICBzeW1ib2xSZW1vdmFsLFxufSBmcm9tICcuL2RhdGEnO1xuXG4vKiogVXBncmFkZSBkYXRhIGZvciB0aGUgQW5ndWxhciBDREsuICovXG5leHBvcnQgY29uc3QgY2RrVXBncmFkZURhdGE6IFVwZ3JhZGVEYXRhID0ge1xuICBhdHRyaWJ1dGVTZWxlY3RvcnMsXG4gIGNsYXNzTmFtZXMsXG4gIGNvbnN0cnVjdG9yQ2hlY2tzLFxuICBjc3NTZWxlY3RvcnMsXG4gIGVsZW1lbnRTZWxlY3RvcnMsXG4gIGlucHV0TmFtZXMsXG4gIG1ldGhvZENhbGxDaGVja3MsXG4gIG91dHB1dE5hbWVzLFxuICBwcm9wZXJ0eU5hbWVzLFxuICBzeW1ib2xSZW1vdmFsLFxufTtcblxuLyoqXG4gKiBJbnRlcmZhY2UgdGhhdCBkZXNjcmliZXMgdGhlIHVwZ3JhZGUgZGF0YSB0aGF0IG5lZWRzIHRvIGJlIGRlZmluZWQgd2hlbiB1c2luZyB0aGUgQ0RLXG4gKiB1cGdyYWRlIHJ1bGVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFVwZ3JhZGVEYXRhIHtcbiAgYXR0cmlidXRlU2VsZWN0b3JzOiBWZXJzaW9uQ2hhbmdlczxBdHRyaWJ1dGVTZWxlY3RvclVwZ3JhZGVEYXRhPjtcbiAgY2xhc3NOYW1lczogVmVyc2lvbkNoYW5nZXM8Q2xhc3NOYW1lVXBncmFkZURhdGE+O1xuICBjb25zdHJ1Y3RvckNoZWNrczogVmVyc2lvbkNoYW5nZXM8Q29uc3RydWN0b3JDaGVja3NVcGdyYWRlRGF0YT47XG4gIGNzc1NlbGVjdG9yczogVmVyc2lvbkNoYW5nZXM8Q3NzU2VsZWN0b3JVcGdyYWRlRGF0YT47XG4gIGVsZW1lbnRTZWxlY3RvcnM6IFZlcnNpb25DaGFuZ2VzPEVsZW1lbnRTZWxlY3RvclVwZ3JhZGVEYXRhPjtcbiAgaW5wdXROYW1lczogVmVyc2lvbkNoYW5nZXM8SW5wdXROYW1lVXBncmFkZURhdGE+O1xuICBtZXRob2RDYWxsQ2hlY2tzOiBWZXJzaW9uQ2hhbmdlczxNZXRob2RDYWxsVXBncmFkZURhdGE+O1xuICBvdXRwdXROYW1lczogVmVyc2lvbkNoYW5nZXM8T3V0cHV0TmFtZVVwZ3JhZGVEYXRhPjtcbiAgcHJvcGVydHlOYW1lczogVmVyc2lvbkNoYW5nZXM8UHJvcGVydHlOYW1lVXBncmFkZURhdGE+O1xuICBzeW1ib2xSZW1vdmFsOiBWZXJzaW9uQ2hhbmdlczxTeW1ib2xSZW1vdmFsVXBncmFkZURhdGE+O1xufVxuXG4vKipcbiAqIEdldHMgdGhlIHJlZHVjZWQgdXBncmFkZSBkYXRhIGZvciB0aGUgc3BlY2lmaWVkIGRhdGEga2V5LiBUaGUgZnVuY3Rpb24gcmVhZHMgb3V0IHRoZVxuICogdGFyZ2V0IHZlcnNpb24gYW5kIHVwZ3JhZGUgZGF0YSBvYmplY3QgZnJvbSB0aGUgbWlncmF0aW9uIGFuZCByZXNvbHZlcyB0aGUgc3BlY2lmaWVkXG4gKiBkYXRhIHBvcnRpb24gdGhhdCBpcyBzcGVjaWZpY2FsbHkgdGllZCB0byB0aGUgdGFyZ2V0IHZlcnNpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRWZXJzaW9uVXBncmFkZURhdGE8XG4gIFQgZXh0ZW5kcyBrZXlvZiBVcGdyYWRlRGF0YSxcbiAgVSA9IFZhbHVlT2ZDaGFuZ2VzPFVwZ3JhZGVEYXRhW1RdPixcbj4obWlncmF0aW9uOiBNaWdyYXRpb248VXBncmFkZURhdGE+LCBkYXRhTmFtZTogVCk6IFVbXSB7XG4gIGlmIChtaWdyYXRpb24udGFyZ2V0VmVyc2lvbiA9PT0gbnVsbCkge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIC8vIE5vdGUgdGhhdCBiZWxvdyB3ZSBuZWVkIHRvIGNhc3QgdG8gYHVua25vd25gIGZpcnN0IFRTIGRvZXNuJ3QgaW5mZXIgdGhlIHR5cGUgb2YgVCBjb3JyZWN0bHkuXG4gIHJldHVybiBnZXRDaGFuZ2VzRm9yVGFyZ2V0PFU+KFxuICAgIG1pZ3JhdGlvbi50YXJnZXRWZXJzaW9uLFxuICAgIG1pZ3JhdGlvbi51cGdyYWRlRGF0YVtkYXRhTmFtZV0gYXMgdW5rbm93biBhcyBWZXJzaW9uQ2hhbmdlczxVPixcbiAgKTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
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
|
+
/** Path to the schematic collection for non-migration schematics. */
|
|
9
|
+
export declare const COLLECTION_PATH: string;
|
|
10
|
+
/** Path to the schematic collection that includes the migrations. */
|
|
11
|
+
export declare const MIGRATION_PATH: string;
|
|
@@ -0,0 +1,16 @@
|
|
|
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
|
+
exports.MIGRATION_PATH = exports.COLLECTION_PATH = void 0;
|
|
11
|
+
const path_1 = require("path");
|
|
12
|
+
/** Path to the schematic collection for non-migration schematics. */
|
|
13
|
+
exports.COLLECTION_PATH = (0, path_1.join)(__dirname, 'collection.json');
|
|
14
|
+
/** Path to the schematic collection that includes the migrations. */
|
|
15
|
+
exports.MIGRATION_PATH = (0, path_1.join)(__dirname, 'migration.json');
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvcGF0aHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsK0JBQTBCO0FBRTFCLHFFQUFxRTtBQUN4RCxRQUFBLGVBQWUsR0FBRyxJQUFBLFdBQUksRUFBQyxTQUFTLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztBQUVsRSxxRUFBcUU7QUFDeEQsUUFBQSxjQUFjLEdBQUcsSUFBQSxXQUFJLEVBQUMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtqb2lufSBmcm9tICdwYXRoJztcblxuLyoqIFBhdGggdG8gdGhlIHNjaGVtYXRpYyBjb2xsZWN0aW9uIGZvciBub24tbWlncmF0aW9uIHNjaGVtYXRpY3MuICovXG5leHBvcnQgY29uc3QgQ09MTEVDVElPTl9QQVRIID0gam9pbihfX2Rpcm5hbWUsICdjb2xsZWN0aW9uLmpzb24nKTtcblxuLyoqIFBhdGggdG8gdGhlIHNjaGVtYXRpYyBjb2xsZWN0aW9uIHRoYXQgaW5jbHVkZXMgdGhlIG1pZ3JhdGlvbnMuICovXG5leHBvcnQgY29uc3QgTUlHUkFUSU9OX1BBVEggPSBqb2luKF9fZGlybmFtZSwgJ21pZ3JhdGlvbi5qc29uJyk7XG4iXX0=
|
|
@@ -0,0 +1,44 @@
|
|
|
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 { FileSystem, WorkspacePath } from './file-system';
|
|
10
|
+
import { LineAndCharacter } from './utils/line-mappings';
|
|
11
|
+
export interface ResolvedResource {
|
|
12
|
+
/** Class declaration that contains this resource. */
|
|
13
|
+
container: ts.ClassDeclaration | null;
|
|
14
|
+
/** File content of the given template. */
|
|
15
|
+
content: string;
|
|
16
|
+
/** Start offset of the resource content (e.g. in the inline source file) */
|
|
17
|
+
start: number;
|
|
18
|
+
/** Whether the given resource is inline or not. */
|
|
19
|
+
inline: boolean;
|
|
20
|
+
/** Path to the file that contains this resource. */
|
|
21
|
+
filePath: WorkspacePath;
|
|
22
|
+
/**
|
|
23
|
+
* Gets the character and line of a given position index in the resource.
|
|
24
|
+
* If the resource is declared inline within a TypeScript source file, the line and
|
|
25
|
+
* character are based on the full source file content.
|
|
26
|
+
*/
|
|
27
|
+
getCharacterAndLineOfPosition: (pos: number) => LineAndCharacter;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Collector that can be used to find Angular templates and stylesheets referenced within
|
|
31
|
+
* given TypeScript source files (inline or external referenced files)
|
|
32
|
+
*/
|
|
33
|
+
export declare class ComponentResourceCollector {
|
|
34
|
+
typeChecker: ts.TypeChecker;
|
|
35
|
+
private _fileSystem;
|
|
36
|
+
resolvedTemplates: ResolvedResource[];
|
|
37
|
+
resolvedStylesheets: ResolvedResource[];
|
|
38
|
+
constructor(typeChecker: ts.TypeChecker, _fileSystem: FileSystem);
|
|
39
|
+
visitNode(node: ts.Node): void;
|
|
40
|
+
private _visitClassDeclaration;
|
|
41
|
+
/** Resolves an external stylesheet by reading its content and computing line mappings. */
|
|
42
|
+
resolveExternalStylesheet(filePath: WorkspacePath, container: ts.ClassDeclaration | null): ResolvedResource | null;
|
|
43
|
+
private _trackExternalStylesheet;
|
|
44
|
+
}
|
|
@@ -0,0 +1,166 @@
|
|
|
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
|
+
exports.ComponentResourceCollector = void 0;
|
|
11
|
+
const path_1 = require("path");
|
|
12
|
+
const ts = require("typescript");
|
|
13
|
+
const decorators_1 = require("./utils/decorators");
|
|
14
|
+
const functions_1 = require("./utils/functions");
|
|
15
|
+
const line_mappings_1 = require("./utils/line-mappings");
|
|
16
|
+
const property_name_1 = require("./utils/property-name");
|
|
17
|
+
/**
|
|
18
|
+
* Collector that can be used to find Angular templates and stylesheets referenced within
|
|
19
|
+
* given TypeScript source files (inline or external referenced files)
|
|
20
|
+
*/
|
|
21
|
+
class ComponentResourceCollector {
|
|
22
|
+
typeChecker;
|
|
23
|
+
_fileSystem;
|
|
24
|
+
resolvedTemplates = [];
|
|
25
|
+
resolvedStylesheets = [];
|
|
26
|
+
constructor(typeChecker, _fileSystem) {
|
|
27
|
+
this.typeChecker = typeChecker;
|
|
28
|
+
this._fileSystem = _fileSystem;
|
|
29
|
+
}
|
|
30
|
+
visitNode(node) {
|
|
31
|
+
if (node.kind === ts.SyntaxKind.ClassDeclaration) {
|
|
32
|
+
this._visitClassDeclaration(node);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
_visitClassDeclaration(node) {
|
|
36
|
+
const decorators = ts.getDecorators(node);
|
|
37
|
+
if (!decorators || !decorators.length) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
const ngDecorators = (0, decorators_1.getAngularDecorators)(this.typeChecker, decorators);
|
|
41
|
+
const componentDecorator = ngDecorators.find(dec => dec.name === 'Component');
|
|
42
|
+
// In case no "@Component" decorator could be found on the current class, skip.
|
|
43
|
+
if (!componentDecorator) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
const decoratorCall = componentDecorator.node.expression;
|
|
47
|
+
// In case the component decorator call is not valid, skip this class declaration.
|
|
48
|
+
if (decoratorCall.arguments.length !== 1) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const componentMetadata = (0, functions_1.unwrapExpression)(decoratorCall.arguments[0]);
|
|
52
|
+
// Ensure that the component metadata is an object literal expression.
|
|
53
|
+
if (!ts.isObjectLiteralExpression(componentMetadata)) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
const sourceFile = node.getSourceFile();
|
|
57
|
+
const filePath = this._fileSystem.resolve(sourceFile.fileName);
|
|
58
|
+
const sourceFileDirPath = (0, path_1.dirname)(sourceFile.fileName);
|
|
59
|
+
// Walk through all component metadata properties and determine the referenced
|
|
60
|
+
// HTML templates (either external or inline)
|
|
61
|
+
componentMetadata.properties.forEach(property => {
|
|
62
|
+
if (!ts.isPropertyAssignment(property)) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const propertyName = (0, property_name_1.getPropertyNameText)(property.name);
|
|
66
|
+
if (propertyName === 'styles') {
|
|
67
|
+
const elements = ts.isArrayLiteralExpression(property.initializer)
|
|
68
|
+
? property.initializer.elements
|
|
69
|
+
: [property.initializer];
|
|
70
|
+
elements.forEach(el => {
|
|
71
|
+
if (ts.isStringLiteralLike(el)) {
|
|
72
|
+
// Need to add an offset of one to the start because the template quotes are
|
|
73
|
+
// not part of the template content.
|
|
74
|
+
const templateStartIdx = el.getStart() + 1;
|
|
75
|
+
const content = stripBom(el.text);
|
|
76
|
+
this.resolvedStylesheets.push({
|
|
77
|
+
filePath,
|
|
78
|
+
container: node,
|
|
79
|
+
content,
|
|
80
|
+
inline: true,
|
|
81
|
+
start: templateStartIdx,
|
|
82
|
+
getCharacterAndLineOfPosition: pos => ts.getLineAndCharacterOfPosition(sourceFile, pos + templateStartIdx),
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
// In case there is an inline template specified, ensure that the value is statically
|
|
88
|
+
// analyzable by checking if the initializer is a string literal-like node.
|
|
89
|
+
if (propertyName === 'template' && ts.isStringLiteralLike(property.initializer)) {
|
|
90
|
+
// Need to add an offset of one to the start because the template quotes are
|
|
91
|
+
// not part of the template content.
|
|
92
|
+
const templateStartIdx = property.initializer.getStart() + 1;
|
|
93
|
+
this.resolvedTemplates.push({
|
|
94
|
+
filePath,
|
|
95
|
+
container: node,
|
|
96
|
+
content: property.initializer.text,
|
|
97
|
+
inline: true,
|
|
98
|
+
start: templateStartIdx,
|
|
99
|
+
getCharacterAndLineOfPosition: pos => ts.getLineAndCharacterOfPosition(sourceFile, pos + templateStartIdx),
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
if (propertyName === 'styleUrls' && ts.isArrayLiteralExpression(property.initializer)) {
|
|
103
|
+
property.initializer.elements.forEach(el => {
|
|
104
|
+
if (ts.isStringLiteralLike(el)) {
|
|
105
|
+
this._trackExternalStylesheet(sourceFileDirPath, el, node);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
if (propertyName === 'styleUrl' && ts.isStringLiteralLike(property.initializer)) {
|
|
110
|
+
this._trackExternalStylesheet(sourceFileDirPath, property.initializer, node);
|
|
111
|
+
}
|
|
112
|
+
if (propertyName === 'templateUrl' && ts.isStringLiteralLike(property.initializer)) {
|
|
113
|
+
const templateUrl = property.initializer.text;
|
|
114
|
+
const templatePath = this._fileSystem.resolve(sourceFileDirPath, templateUrl);
|
|
115
|
+
// In case the template does not exist in the file system, skip this
|
|
116
|
+
// external template.
|
|
117
|
+
if (!this._fileSystem.fileExists(templatePath)) {
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
const fileContent = stripBom(this._fileSystem.read(templatePath) || '');
|
|
121
|
+
if (fileContent) {
|
|
122
|
+
const lineStartsMap = (0, line_mappings_1.computeLineStartsMap)(fileContent);
|
|
123
|
+
this.resolvedTemplates.push({
|
|
124
|
+
filePath: templatePath,
|
|
125
|
+
container: node,
|
|
126
|
+
content: fileContent,
|
|
127
|
+
inline: false,
|
|
128
|
+
start: 0,
|
|
129
|
+
getCharacterAndLineOfPosition: p => (0, line_mappings_1.getLineAndCharacterFromPosition)(lineStartsMap, p),
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
/** Resolves an external stylesheet by reading its content and computing line mappings. */
|
|
136
|
+
resolveExternalStylesheet(filePath, container) {
|
|
137
|
+
// Strip the BOM to avoid issues with the Sass compiler. See:
|
|
138
|
+
// https://github.com/angular/components/issues/24227#issuecomment-1200934258
|
|
139
|
+
const fileContent = stripBom(this._fileSystem.read(filePath) || '');
|
|
140
|
+
if (!fileContent) {
|
|
141
|
+
return null;
|
|
142
|
+
}
|
|
143
|
+
const lineStartsMap = (0, line_mappings_1.computeLineStartsMap)(fileContent);
|
|
144
|
+
return {
|
|
145
|
+
filePath: filePath,
|
|
146
|
+
container: container,
|
|
147
|
+
content: fileContent,
|
|
148
|
+
inline: false,
|
|
149
|
+
start: 0,
|
|
150
|
+
getCharacterAndLineOfPosition: pos => (0, line_mappings_1.getLineAndCharacterFromPosition)(lineStartsMap, pos),
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
_trackExternalStylesheet(sourceFileDirPath, node, container) {
|
|
154
|
+
const stylesheetPath = this._fileSystem.resolve(sourceFileDirPath, node.text);
|
|
155
|
+
const stylesheet = this.resolveExternalStylesheet(stylesheetPath, container);
|
|
156
|
+
if (stylesheet) {
|
|
157
|
+
this.resolvedStylesheets.push(stylesheet);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
exports.ComponentResourceCollector = ComponentResourceCollector;
|
|
162
|
+
/** Strips the BOM from a string. */
|
|
163
|
+
function stripBom(content) {
|
|
164
|
+
return content.replace(/\uFEFF/g, '');
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LXJlc291cmNlLWNvbGxlY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy91cGRhdGUtdG9vbC9jb21wb25lbnQtcmVzb3VyY2UtY29sbGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILCtCQUE2QjtBQUM3QixpQ0FBaUM7QUFFakMsbURBQXdEO0FBQ3hELGlEQUFtRDtBQUNuRCx5REFJK0I7QUFDL0IseURBQTBEO0FBcUIxRDs7O0dBR0c7QUFDSCxNQUFhLDBCQUEwQjtJQUs1QjtJQUNDO0lBTFYsaUJBQWlCLEdBQXVCLEVBQUUsQ0FBQztJQUMzQyxtQkFBbUIsR0FBdUIsRUFBRSxDQUFDO0lBRTdDLFlBQ1MsV0FBMkIsRUFDMUIsV0FBdUI7UUFEeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQzFCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO0lBQzlCLENBQUM7SUFFSixTQUFTLENBQUMsSUFBYTtRQUNyQixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRTtZQUNoRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBMkIsQ0FBQyxDQUFDO1NBQzFEO0lBQ0gsQ0FBQztJQUVPLHNCQUFzQixDQUFDLElBQXlCO1FBQ3RELE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFMUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUU7WUFDckMsT0FBTztTQUNSO1FBRUQsTUFBTSxZQUFZLEdBQUcsSUFBQSxpQ0FBb0IsRUFBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sa0JBQWtCLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxD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RUFBRSxHQUFHLENBQUM7U0FDMUYsQ0FBQztJQUNKLENBQUM7SUFFTyx3QkFBd0IsQ0FDOUIsaUJBQXlCLEVBQ3pCLElBQTBCLEVBQzFCLFNBQThCO1FBRTlCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5RSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsY0FBYyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRTdFLElBQUksVUFBVSxFQUFFO1lBQ2QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUMzQztJQUNILENBQUM7Q0FDRjtBQS9LRCxnRUErS0M7QUFFRCxvQ0FBb0M7QUFDcEMsU0FBUyxRQUFRLENBQUMsT0FBZTtJQUMvQixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ3hDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtkaXJuYW1lfSBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuaW1wb3J0IHtGaWxlU3lzdGVtLCBXb3Jrc3BhY2VQYXRofSBmcm9tICcuL2ZpbGUtc3lzdGVtJztcbmltcG9ydCB7Z2V0QW5ndWxhckRlY29yYXRvcnN9IGZyb20gJy4vdXRpbHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQge3Vud3JhcEV4cHJlc3Npb259IGZyb20gJy4vdXRpbHMvZnVuY3Rpb25zJztcbmltcG9ydCB7XG4gIGNvbXB1dGVMaW5lU3RhcnRzTWFwLFxuICBnZXRMaW5lQW5kQ2hhcmFjdGVyRnJvbVBvc2l0aW9uLFxuICBMaW5lQW5kQ2hhcmFjdGVyLFxufSBmcm9tICcuL3V0aWxzL2xpbmUtbWFwcGluZ3MnO1xuaW1wb3J0IHtnZXRQcm9wZXJ0eU5hbWVUZXh0fSBmcm9tICcuL3V0aWxzL3Byb3BlcnR5LW5hbWUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlc29sdmVkUmVzb3VyY2Uge1xuICAvKiogQ2xhc3MgZGVjbGFyYXRpb24gdGhhdCBjb250YWlucyB0aGlzIHJlc291cmNlLiAqL1xuICBjb250YWluZXI6IHRzLkNsYXNzRGVjbGFyYXRpb24gfCBudWxsO1xuICAvKiogRmlsZSBjb250ZW50IG9mIHRoZSBnaXZlbiB0ZW1wbGF0ZS4gKi9cbiAgY29udGVudDogc3RyaW5nO1xuICAvKiogU3RhcnQgb2Zmc2V0IG9mIHRoZSByZXNvdXJjZSBjb250ZW50IChlLmcuIGluIHRoZSBpbmxpbmUgc291cmNlIGZpbGUpICovXG4gIHN0YXJ0OiBudW1iZXI7XG4gIC8qKiBXaGV0aGVyIHRoZSBnaXZlbiByZXNvdXJjZSBpcyBpbmxpbmUgb3Igbm90LiAqL1xuICBpbmxpbmU6IGJvb2xlYW47XG4gIC8qKiBQYXRoIHRvIHRoZSBmaWxlIHRoYXQgY29udGFpbnMgdGhpcyByZXNvdXJjZS4gKi9cbiAgZmlsZVBhdGg6IFdvcmtzcGFjZVBhdGg7XG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjaGFyYWN0ZXIgYW5kIGxpbmUgb2YgYSBnaXZlbiBwb3NpdGlvbiBpbmRleCBpbiB0aGUgcmVzb3VyY2UuXG4gICAqIElmIHRoZSByZXNvdXJjZSBpcyBkZWNsYXJlZCBpbmxpbmUgd2l0aGluIGEgVHlwZVNjcmlwdCBzb3VyY2UgZmlsZSwgdGhlIGxpbmUgYW5kXG4gICAqIGNoYXJhY3RlciBhcmUgYmFzZWQgb24gdGhlIGZ1bGwgc291cmNlIGZpbGUgY29udGVudC5cbiAgICovXG4gIGdldENoYXJhY3RlckFuZExpbmVPZlBvc2l0aW9uOiAocG9zOiBudW1iZXIpID0+IExpbmVBbmRDaGFyYWN0ZXI7XG59XG5cbi8qKlxuICogQ29sbGVjdG9yIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmluZCBBbmd1bGFyIHRlbXBsYXRlcyBhbmQgc3R5bGVzaGVldHMgcmVmZXJlbmNlZCB3aXRoaW5cbiAqIGdpdmVuIFR5cGVTY3JpcHQgc291cmNlIGZpbGVzIChpbmxpbmUgb3IgZXh0ZXJuYWwgcmVmZXJlbmNlZCBmaWxlcylcbiAqL1xuZXhwb3J0IGNsYXNzIENvbXBvbmVudFJlc291cmNlQ29sbGVjdG9yIHtcbiAgcmVzb2x2ZWRUZW1wbGF0ZXM6IFJlc29sdmVkUmVzb3VyY2VbXSA9IFtdO1xuICByZXNvbHZlZFN0eWxlc2hlZXRzOiBSZXNvbHZlZFJlc291cmNlW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgdHlwZUNoZWNrZXI6IHRzLlR5cGVDaGVja2VyLFxuICAgIHByaXZhdGUgX2ZpbGVTeXN0ZW06IEZpbGVTeXN0ZW0sXG4gICkge31cblxuICB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSkge1xuICAgIGlmIChub2RlLmtpbmQgPT09IHRzLlN5bnRheEtpbmQuQ2xhc3NEZWNsYXJhdGlvbikge1xuICAgICAgdGhpcy5fdmlzaXRDbGFzc0RlY2xhcmF0aW9uKG5vZGUgYXMgdHMuQ2xhc3NEZWNsYXJhdGlvbik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdmlzaXRDbGFzc0RlY2xhcmF0aW9uKG5vZGU6IHRzLkNsYXNzRGVjbGFyYXRpb24pIHtcbiAgICBjb25zdCBkZWNvcmF0b3JzID0gdHMuZ2V0RGVjb3JhdG9ycyhub2RlKTtcblxuICAgIGlmICghZGVjb3JhdG9ycyB8fCAhZGVjb3JhdG9ycy5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBuZ0RlY29yYXRvcnMgPSBnZXRBbmd1bGFyRGVjb3JhdG9ycyh0aGlzLnR5cGVDaGVja2VyLCBkZWNvcmF0b3JzKTtcbiAgICBjb25zdCBjb21wb25lbnREZWNvcmF0b3IgPSBuZ0RlY29yYXRvcnMuZmluZChkZWMgPT4gZGVjLm5hbWUgPT09ICdDb21wb25lbnQnKTtcblxuICAgIC8vIEluIGNhc2Ugbm8gXCJAQ29tcG9uZW50XCIgZGVjb3JhdG9yIGNvdWxkIGJlIGZvdW5kIG9uIHRoZSBjdXJyZW50IGNsYXNzLCBza2lwLlxuICAgIGlmICghY29tcG9uZW50RGVjb3JhdG9yKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVjb3JhdG9yQ2FsbCA9IGNvbXBvbmVudERlY29yYXRvci5ub2RlLmV4cHJlc3Npb247XG5cbiAgICAvLyBJbiBjYXNlIHRoZSBjb21wb25lbnQgZGVjb3JhdG9yIGNhbGwgaXMgbm90IHZhbGlkLCBza2lwIHRoaXMgY2xhc3MgZGVjbGFyYXRpb24uXG4gICAgaWYgKGRlY29yYXRvckNhbGwuYXJndW1lbnRzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbXBvbmVudE1ldGFkYXRhID0gdW53cmFwRXhwcmVzc2lvbihkZWNvcmF0b3JDYWxsLmFyZ3VtZW50c1swXSk7XG5cbiAgICAvLyBFbnN1cmUgdGhhdCB0aGUgY29tcG9uZW50IG1ldGFkYXRhIGlzIGFuIG9iamVjdCBsaXRlcmFsIGV4cHJlc3Npb24uXG4gICAgaWYgKCF0cy5pc09iamVjdExpdGVyYWxFeHByZXNzaW9uKGNvbXBvbmVudE1ldGFkYXRhKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHNvdXJjZUZpbGUgPSBub2RlLmdldFNvdXJjZUZpbGUoKTtcbiAgICBjb25zdCBmaWxlUGF0aCA9IHRoaXMuX2ZpbGVTeXN0ZW0ucmVzb2x2ZShzb3VyY2VGaWxlLmZpbGVOYW1lKTtcbiAgICBjb25zdCBzb3VyY2VGaWxlRGlyUGF0aCA9IGRpcm5hbWUoc291cmNlRmlsZS5maWxlTmFtZSk7XG5cbiAgICAvLyBXYWxrIHRocm91Z2ggYWxsIGNvbXBvbmVudCBtZXRhZGF0YSBwcm9wZXJ0aWVzIGFuZCBkZXRlcm1pbmUgdGhlIHJlZmVyZW5jZWRcbiAgICAvLyBIVE1MIHRlbXBsYXRlcyAoZWl0aGVyIGV4dGVybmFsIG9yIGlubGluZSlcbiAgICBjb21wb25lbnRNZXRhZGF0YS5wcm9wZXJ0aWVzLmZvckVhY2gocHJvcGVydHkgPT4ge1xuICAgICAgaWYgKCF0cy5pc1Byb3BlcnR5QXNzaWdubWVudChwcm9wZXJ0eSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwcm9wZXJ0eU5hbWUgPSBnZXRQcm9wZXJ0eU5hbWVUZXh0KHByb3BlcnR5Lm5hbWUpO1xuXG4gICAgICBpZiAocHJvcGVydHlOYW1lID09PSAnc3R5bGVzJykge1xuICAgICAgICBjb25zdCBlbGVtZW50cyA9IHRzLmlzQXJyYXlMaXRlcmFsRXhwcmVzc2lvbihwcm9wZXJ0eS5pbml0aWFsaXplcilcbiAgICAgICAgICA/IHByb3BlcnR5LmluaXRpYWxpemVyLmVsZW1lbnRzXG4gICAgICAgICAgOiBbcHJvcGVydHkuaW5pdGlhbGl6ZXJdO1xuXG4gICAgICAgIGVsZW1lbnRzLmZvckVhY2goZWwgPT4ge1xuICAgICAgICAgIGlmICh0cy5pc1N0cmluZ0xpdGVyYWxMaWtlKGVsKSkge1xuICAgICAgICAgICAgLy8gTmVlZCB0byBhZGQgYW4gb2Zmc2V0IG9mIG9uZSB0byB0aGUgc3RhcnQgYmVjYXVzZSB0aGUgdGVtcGxhdGUgcXVvdGVzIGFyZVxuICAgICAgICAgICAgLy8gbm90IHBhcnQgb2YgdGhlIHRlbXBsYXRlIGNvbnRlbnQuXG4gICAgICAgICAgICBjb25zdCB0ZW1wbGF0ZVN0YXJ0SWR4ID0gZWwuZ2V0U3RhcnQoKSArIDE7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50ID0gc3RyaXBCb20oZWwudGV4dCk7XG4gICAgICAgICAgICB0aGlzLnJlc29sdmVkU3R5bGVzaGVldHMucHVzaCh7XG4gICAgICAgICAgICAgIGZpbGVQYXRoLFxuICAgICAgICAgICAgICBjb250YWluZXI6IG5vZGUsXG4gICAgICAgICAgICAgIGNvbnRlbnQsXG4gICAgICAgICAgICAgIGlubGluZTogdHJ1ZSxcbiAgICAgICAgICAgICAgc3RhcnQ6IHRlbXBsYXRlU3RhcnRJZHgsXG4gICAgICAgICAgICAgIGdldENoYXJhY3RlckFuZExpbmVPZlBvc2l0aW9uOiBwb3MgPT5cbiAgICAgICAgICAgICAgICB0cy5nZXRMaW5lQW5kQ2hhcmFjdGVyT2ZQb3NpdGlvbihzb3VyY2VGaWxlLCBwb3MgKyB0ZW1wbGF0ZVN0YXJ0SWR4KSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIC8vIEluIGNhc2UgdGhlcmUgaXMgYW4gaW5saW5lIHRlbXBsYXRlIHNwZWNpZmllZCwgZW5zdXJlIHRoYXQgdGhlIHZhbHVlIGlzIHN0YXRpY2FsbHlcbiAgICAgIC8vIGFuYWx5emFibGUgYnkgY2hlY2tpbmcgaWYgdGhlIGluaXRpYWxpemVyIGlzIGEgc3RyaW5nIGxpdGVyYWwtbGlrZSBub2RlLlxuICAgICAgaWYgKHByb3BlcnR5TmFtZSA9PT0gJ3RlbXBsYXRlJyAmJiB0cy5pc1N0cmluZ0xpdGVyYWxMaWtlKHByb3BlcnR5LmluaXRpYWxpemVyKSkge1xuICAgICAgICAvLyBOZWVkIHRvIGFkZCBhbiBvZmZzZXQgb2Ygb25lIHRvIHRoZSBzdGFydCBiZWNhdXNlIHRoZSB0ZW1wbGF0ZSBxdW90ZXMgYXJlXG4gICAgICAgIC8vIG5vdCBwYXJ0IG9mIHRoZSB0ZW1wbGF0ZSBjb250ZW50LlxuICAgICAgICBjb25zdCB0ZW1wbGF0ZVN0YXJ0SWR4ID0gcHJvcGVydHkuaW5pdGlhbGl6ZXIuZ2V0U3RhcnQoKSArIDE7XG4gICAgICAgIHRoaXMucmVzb2x2ZWRUZW1wbGF0ZXMucHVzaCh7XG4gICAgICAgICAgZmlsZVBhdGgsXG4gICAgICAgICAgY29udGFpbmVyOiBub2RlLFxuICAgICAgICAgIGNvbnRlbnQ6IHByb3BlcnR5LmluaXRpYWxpemVyLnRleHQsXG4gICAgICAgICAgaW5saW5lOiB0cnVlLFxuICAgICAgICAgIHN0YXJ0OiB0ZW1wbGF0ZVN0YXJ0SWR4LFxuICAgICAgICAgIGdldENoYXJhY3RlckFuZExpbmVPZlBvc2l0aW9uOiBwb3MgPT5cbiAgICAgICAgICAgIHRzLmdldExpbmVBbmRDaGFyYWN0ZXJPZlBvc2l0aW9uKHNvdXJjZUZpbGUsIHBvcyArIHRlbXBsYXRlU3RhcnRJZHgpLFxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKHByb3BlcnR5TmFtZSA9PT0gJ3N0eWxlVXJscycgJiYgdHMuaXNBcnJheUxpdGVyYWxFeHByZXNzaW9uKHByb3BlcnR5LmluaXRpYWxpemVyKSkge1xuICAgICAgICBwcm9wZXJ0eS5pbml0aWFsaXplci5lbGVtZW50cy5mb3JFYWNoKGVsID0+IHtcbiAgICAgICAgICBpZiAodHMuaXNTdHJpbmdMaXRlcmFsTGlrZShlbCkpIHtcbiAgICAgICAgICAgIHRoaXMuX3RyYWNrRXh0ZXJuYWxTdHlsZXNoZWV0KHNvdXJjZUZpbGVEaXJQYXRoLCBlbCwgbm9kZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKHByb3BlcnR5TmFtZSA9PT0gJ3N0eWxlVXJsJyAmJiB0cy5pc1N0cmluZ0xpdGVyYWxMaWtlKHByb3BlcnR5LmluaXRpYWxpemVyKSkge1xuICAgICAgICB0aGlzLl90cmFja0V4dGVybmFsU3R5bGVzaGVldChzb3VyY2VGaWxlRGlyUGF0aCwgcHJvcGVydHkuaW5pdGlhbGl6ZXIsIG5vZGUpO1xuICAgICAgfVxuXG4gICAgICBpZiAocHJvcGVydHlOYW1lID09PSAndGVtcGxhdGVVcmwnICYmIHRzLmlzU3RyaW5nTGl0ZXJhbExpa2UocHJvcGVydHkuaW5pdGlhbGl6ZXIpKSB7XG4gICAgICAgIGNvbnN0IHRlbXBsYXRlVXJsID0gcHJvcGVydHkuaW5pdGlhbGl6ZXIudGV4dDtcbiAgICAgICAgY29uc3QgdGVtcGxhdGVQYXRoID0gdGhpcy5fZmlsZVN5c3RlbS5yZXNvbHZlKHNvdXJjZUZpbGVEaXJQYXRoLCB0ZW1wbGF0ZVVybCk7XG5cbiAgICAgICAgLy8gSW4gY2FzZSB0aGUgdGVtcGxhdGUgZG9lcyBub3QgZXhpc3QgaW4gdGhlIGZpbGUgc3lzdGVtLCBza2lwIHRoaXNcbiAgICAgICAgLy8gZXh0ZXJuYWwgdGVtcGxhdGUuXG4gICAgICAgIGlmICghdGhpcy5fZmlsZVN5c3RlbS5maWxlRXhpc3RzKHRlbXBsYXRlUGF0aCkpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmaWxlQ29udGVudCA9IHN0cmlwQm9tKHRoaXMuX2ZpbGVTeXN0ZW0ucmVhZCh0ZW1wbGF0ZVBhdGgpIHx8ICcnKTtcblxuICAgICAgICBpZiAoZmlsZUNvbnRlbnQpIHtcbiAgICAgICAgICBjb25zdCBsaW5lU3RhcnRzTWFwID0gY29tcHV0ZUxpbmVTdGFydHNNYXAoZmlsZUNvbnRlbnQpO1xuXG4gICAgICAgICAgdGhpcy5yZXNvbHZlZFRlbXBsYXRlcy5wdXNoKHtcbiAgICAgICAgICAgIGZpbGVQYXRoOiB0ZW1wbGF0ZVBhdGgsXG4gICAgICAgICAgICBjb250YWluZXI6IG5vZGUsXG4gICAgICAgICAgICBjb250ZW50OiBmaWxlQ29udGVudCxcbiAgICAgICAgICAgIGlubGluZTogZmFsc2UsXG4gICAgICAgICAgICBzdGFydDogMCxcbiAgICAgICAgICAgIGdldENoYXJhY3RlckFuZExpbmVPZlBvc2l0aW9uOiBwID0+IGdldExpbmVBbmRDaGFyYWN0ZXJGcm9tUG9zaXRpb24obGluZVN0YXJ0c01hcCwgcCksXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBSZXNvbHZlcyBhbiBleHRlcm5hbCBzdHlsZXNoZWV0IGJ5IHJlYWRpbmcgaXRzIGNvbnRlbnQgYW5kIGNvbXB1dGluZyBsaW5lIG1hcHBpbmdzLiAqL1xuICByZXNvbHZlRXh0ZXJuYWxTdHlsZXNoZWV0KFxuICAgIGZpbGVQYXRoOiBXb3Jrc3BhY2VQYXRoLFxuICAgIGNvbnRhaW5lcjogdHMuQ2xhc3NEZWNsYXJhdGlvbiB8IG51bGwsXG4gICk6IFJlc29sdmVkUmVzb3VyY2UgfCBudWxsIHtcbiAgICAvLyBTdHJpcCB0aGUgQk9NIHRvIGF2b2lkIGlzc3VlcyB3aXRoIHRoZSBTYXNzIGNvbXBpbGVyLiBTZWU6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9pc3N1ZXMvMjQyMjcjaXNzdWVjb21tZW50LTEyMDA5MzQyNThcbiAgICBjb25zdCBmaWxlQ29udGVudCA9IHN0cmlwQm9tKHRoaXMuX2ZpbGVTeXN0ZW0ucmVhZChmaWxlUGF0aCkgfHwgJycpO1xuXG4gICAgaWYgKCFmaWxlQ29udGVudCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgbGluZVN0YXJ0c01hcCA9IGNvbXB1dGVMaW5lU3RhcnRzTWFwKGZpbGVDb250ZW50KTtcblxuICAgIHJldHVybiB7XG4gICAgICBmaWxlUGF0aDogZmlsZVBhdGgsXG4gICAgICBjb250YWluZXI6IGNvbnRhaW5lcixcbiAgICAgIGNvbnRlbnQ6IGZpbGVDb250ZW50LFxuICAgICAgaW5saW5lOiBmYWxzZSxcbiAgICAgIHN0YXJ0OiAwLFxuICAgICAgZ2V0Q2hhcmFjdGVyQW5kTGluZU9mUG9zaXRpb246IHBvcyA9PiBnZXRMaW5lQW5kQ2hhcmFjdGVyRnJvbVBvc2l0aW9uKGxpbmVTdGFydHNNYXAsIHBvcyksXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgX3RyYWNrRXh0ZXJuYWxTdHlsZXNoZWV0KFxuICAgIHNvdXJjZUZpbGVEaXJQYXRoOiBzdHJpbmcsXG4gICAgbm9kZTogdHMuU3RyaW5nTGl0ZXJhbExpa2UsXG4gICAgY29udGFpbmVyOiB0cy5DbGFzc0RlY2xhcmF0aW9uLFxuICApIHtcbiAgICBjb25zdCBzdHlsZXNoZWV0UGF0aCA9IHRoaXMuX2ZpbGVTeXN0ZW0ucmVzb2x2ZShzb3VyY2VGaWxlRGlyUGF0aCwgbm9kZS50ZXh0KTtcbiAgICBjb25zdCBzdHlsZXNoZWV0ID0gdGhpcy5yZXNvbHZlRXh0ZXJuYWxTdHlsZXNoZWV0KHN0eWxlc2hlZXRQYXRoLCBjb250YWluZXIpO1xuXG4gICAgaWYgKHN0eWxlc2hlZXQpIHtcbiAgICAgIHRoaXMucmVzb2x2ZWRTdHlsZXNoZWV0cy5wdXNoKHN0eWxlc2hlZXQpO1xuICAgIH1cbiAgfVxufVxuXG4vKiogU3RyaXBzIHRoZSBCT00gZnJvbSBhIHN0cmluZy4gKi9cbmZ1bmN0aW9uIHN0cmlwQm9tKGNvbnRlbnQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBjb250ZW50LnJlcGxhY2UoL1xcdUZFRkYvZywgJycpO1xufVxuIl19
|
|
@@ -0,0 +1,72 @@
|
|
|
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 { UpdateRecorder } from './update-recorder';
|
|
9
|
+
/**
|
|
10
|
+
* A workspace path semantically is equivalent to the `Path` type provided by the
|
|
11
|
+
* Angular devkit. Paths denoted with such a type are guaranteed to be representing
|
|
12
|
+
* paths of a given virtual file system. This means that the root of a path can be
|
|
13
|
+
* different, and does not necessarily need to match the root in the real file system.
|
|
14
|
+
*
|
|
15
|
+
* For example: Consider we have a project in `/home/<..>/my-project`. Then a path
|
|
16
|
+
* like `/package.json` could actually refer to the `package.json` file in `my-project`.
|
|
17
|
+
* Note that in the real file system this would not match though.
|
|
18
|
+
*
|
|
19
|
+
* One might wonder why another type has been declared for such paths, when there
|
|
20
|
+
* already is the `Path` type provided by the devkit. We do this for a couple of reasons:
|
|
21
|
+
*
|
|
22
|
+
* 1. The update-tool cannot have a dependency on the Angular devkit as that one
|
|
23
|
+
* is not synced into g3. We want to be able to run migrations in g3 if needed.
|
|
24
|
+
*/
|
|
25
|
+
export type WorkspacePath = string & {
|
|
26
|
+
__PRIVATE_DEVKIT_PATH: void;
|
|
27
|
+
};
|
|
28
|
+
/** Interface that describes a directory. */
|
|
29
|
+
export interface DirectoryEntry {
|
|
30
|
+
/** List of directories inside the directory. */
|
|
31
|
+
directories: string[];
|
|
32
|
+
/** List of files inside the directory. */
|
|
33
|
+
files: string[];
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Abstraction of the file system that migrations can use to record and apply
|
|
37
|
+
* changes. This is necessary to support virtual file systems as used in the CLI devkit.
|
|
38
|
+
*/
|
|
39
|
+
export declare abstract class FileSystem {
|
|
40
|
+
/** Checks whether the given file exists. */
|
|
41
|
+
abstract fileExists(path: WorkspacePath): boolean;
|
|
42
|
+
/** Checks whether the given directory exists. */
|
|
43
|
+
abstract directoryExists(path: WorkspacePath): boolean;
|
|
44
|
+
/** Gets the contents of the given file. */
|
|
45
|
+
abstract read(filePath: WorkspacePath): string | null;
|
|
46
|
+
/** Reads the given directory to retrieve children. */
|
|
47
|
+
abstract readDirectory(dirPath: WorkspacePath): DirectoryEntry;
|
|
48
|
+
/**
|
|
49
|
+
* Creates an update recorder for the given file. Edits can be recorded and
|
|
50
|
+
* committed in batches. Changes are not applied automatically because otherwise
|
|
51
|
+
* migrations would need to re-read files, or account for shifted file contents.
|
|
52
|
+
*/
|
|
53
|
+
abstract edit(filePath: WorkspacePath): UpdateRecorder;
|
|
54
|
+
/** Applies all changes which have been recorded in update recorders. */
|
|
55
|
+
abstract commitEdits(): void;
|
|
56
|
+
/** Creates a new file with the given content. */
|
|
57
|
+
abstract create(filePath: WorkspacePath, content: string): void;
|
|
58
|
+
/** Overwrites an existing file with the given content. */
|
|
59
|
+
abstract overwrite(filePath: WorkspacePath, content: string): void;
|
|
60
|
+
/** Deletes the given file. */
|
|
61
|
+
abstract delete(filePath: WorkspacePath): void;
|
|
62
|
+
/**
|
|
63
|
+
* Resolves given paths to a resolved path in the file system. For example, the devkit
|
|
64
|
+
* tree considers the actual workspace directory as file system root.
|
|
65
|
+
*
|
|
66
|
+
* Follows the same semantics as the native path `resolve` method. i.e. segments
|
|
67
|
+
* are processed in reverse. The last segment is considered the target and the
|
|
68
|
+
* function will iterate from the target through other segments until it finds an
|
|
69
|
+
* absolute path segment.
|
|
70
|
+
*/
|
|
71
|
+
abstract resolve(...segments: string[]): WorkspacePath;
|
|
72
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
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
|
+
exports.FileSystem = void 0;
|
|
11
|
+
/**
|
|
12
|
+
* Abstraction of the file system that migrations can use to record and apply
|
|
13
|
+
* changes. This is necessary to support virtual file systems as used in the CLI devkit.
|
|
14
|
+
*/
|
|
15
|
+
class FileSystem {
|
|
16
|
+
}
|
|
17
|
+
exports.FileSystem = FileSystem;
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zeXN0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvdXBkYXRlLXRvb2wvZmlsZS1zeXN0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBa0NIOzs7R0FHRztBQUNILE1BQXNCLFVBQVU7Q0FpQy9CO0FBakNELGdDQWlDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge1VwZGF0ZVJlY29yZGVyfSBmcm9tICcuL3VwZGF0ZS1yZWNvcmRlcic7XG5cbi8qKlxuICogQSB3b3Jrc3BhY2UgcGF0aCBzZW1hbnRpY2FsbHkgaXMgZXF1aXZhbGVudCB0byB0aGUgYFBhdGhgIHR5cGUgcHJvdmlkZWQgYnkgdGhlXG4gKiBBbmd1bGFyIGRldmtpdC4gUGF0aHMgZGVub3RlZCB3aXRoIHN1Y2ggYSB0eXBlIGFyZSBndWFyYW50ZWVkIHRvIGJlIHJlcHJlc2VudGluZ1xuICogcGF0aHMgb2YgYSBnaXZlbiB2aXJ0dWFsIGZpbGUgc3lzdGVtLiBUaGlzIG1lYW5zIHRoYXQgdGhlIHJvb3Qgb2YgYSBwYXRoIGNhbiBiZVxuICogZGlmZmVyZW50LCBhbmQgZG9lcyBub3QgbmVjZXNzYXJpbHkgbmVlZCB0byBtYXRjaCB0aGUgcm9vdCBpbiB0aGUgcmVhbCBmaWxlIHN5c3RlbS5cbiAqXG4gKiBGb3IgZXhhbXBsZTogQ29uc2lkZXIgd2UgaGF2ZSBhIHByb2plY3QgaW4gYC9ob21lLzwuLj4vbXktcHJvamVjdGAuIFRoZW4gYSBwYXRoXG4gKiBsaWtlIGAvcGFja2FnZS5qc29uYCBjb3VsZCBhY3R1YWxseSByZWZlciB0byB0aGUgYHBhY2thZ2UuanNvbmAgZmlsZSBpbiBgbXktcHJvamVjdGAuXG4gKiBOb3RlIHRoYXQgaW4gdGhlIHJlYWwgZmlsZSBzeXN0ZW0gdGhpcyB3b3VsZCBub3QgbWF0Y2ggdGhvdWdoLlxuICpcbiAqIE9uZSBtaWdodCB3b25kZXIgd2h5IGFub3RoZXIgdHlwZSBoYXMgYmVlbiBkZWNsYXJlZCBmb3Igc3VjaCBwYXRocywgd2hlbiB0aGVyZVxuICogYWxyZWFkeSBpcyB0aGUgYFBhdGhgIHR5cGUgcHJvdmlkZWQgYnkgdGhlIGRldmtpdC4gV2UgZG8gdGhpcyBmb3IgYSBjb3VwbGUgb2YgcmVhc29uczpcbiAqXG4gKiAgIDEuIFRoZSB1cGRhdGUtdG9vbCBjYW5ub3QgaGF2ZSBhIGRlcGVuZGVuY3kgb24gdGhlIEFuZ3VsYXIgZGV2a2l0IGFzIHRoYXQgb25lXG4gKiAgICAgIGlzIG5vdCBzeW5jZWQgaW50byBnMy4gV2Ugd2FudCB0byBiZSBhYmxlIHRvIHJ1biBtaWdyYXRpb25zIGluIGczIGlmIG5lZWRlZC5cbiAqL1xuZXhwb3J0IHR5cGUgV29ya3NwYWNlUGF0aCA9IHN0cmluZyAmIHtcbiAgLy8gQnJhbmQgc2lnbmF0dXJlIG1hdGNoZXMgdGhlIGRldmtpdCBwYXRocyBzbyB0aGF0IGV4aXN0aW5nIHBhdGhcbiAgLy8gdXRpbGl0aWVzIGZyb20gdGhlIEFuZ3VsYXIgZGV2a2l0IGNhbiBiZSBjb252ZW5pZW50bHkgdXNlZC5cbiAgX19QUklWQVRFX0RFVktJVF9QQVRIOiB2b2lkO1xufTtcblxuLyoqIEludGVyZmFjZSB0aGF0IGRlc2NyaWJlcyBhIGRpcmVjdG9yeS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGlyZWN0b3J5RW50cnkge1xuICAvKiogTGlzdCBvZiBkaXJlY3RvcmllcyBpbnNpZGUgdGhlIGRpcmVjdG9yeS4gKi9cbiAgZGlyZWN0b3JpZXM6IHN0cmluZ1tdO1xuICAvKiogTGlzdCBvZiBmaWxlcyBpbnNpZGUgdGhlIGRpcmVjdG9yeS4gKi9cbiAgZmlsZXM6IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEFic3RyYWN0aW9uIG9mIHRoZSBmaWxlIHN5c3RlbSB0aGF0IG1pZ3JhdGlvbnMgY2FuIHVzZSB0byByZWNvcmQgYW5kIGFwcGx5XG4gKiBjaGFuZ2VzLiBUaGlzIGlzIG5lY2Vzc2FyeSB0byBzdXBwb3J0IHZpcnR1YWwgZmlsZSBzeXN0ZW1zIGFzIHVzZWQgaW4gdGhlIENMSSBkZXZraXQuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGaWxlU3lzdGVtIHtcbiAgLyoqIENoZWNrcyB3aGV0aGVyIHRoZSBnaXZlbiBmaWxlIGV4aXN0cy4gKi9cbiAgYWJzdHJhY3QgZmlsZUV4aXN0cyhwYXRoOiBXb3Jrc3BhY2VQYXRoKTogYm9vbGVhbjtcbiAgLyoqIENoZWNrcyB3aGV0aGVyIHRoZSBnaXZlbiBkaXJlY3RvcnkgZXhpc3RzLiAqL1xuICBhYnN0cmFjdCBkaXJlY3RvcnlFeGlzdHMocGF0aDogV29ya3NwYWNlUGF0aCk6IGJvb2xlYW47XG4gIC8qKiBHZXRzIHRoZSBjb250ZW50cyBvZiB0aGUgZ2l2ZW4gZmlsZS4gKi9cbiAgYWJzdHJhY3QgcmVhZChmaWxlUGF0aDogV29ya3NwYWNlUGF0aCk6IHN0cmluZyB8IG51bGw7XG4gIC8qKiBSZWFkcyB0aGUgZ2l2ZW4gZGlyZWN0b3J5IHRvIHJldHJpZXZlIGNoaWxkcmVuLiAqL1xuICBhYnN0cmFjdCByZWFkRGlyZWN0b3J5KGRpclBhdGg6IFdvcmtzcGFjZVBhdGgpOiBEaXJlY3RvcnlFbnRyeTtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gdXBkYXRlIHJlY29yZGVyIGZvciB0aGUgZ2l2ZW4gZmlsZS4gRWRpdHMgY2FuIGJlIHJlY29yZGVkIGFuZFxuICAgKiBjb21taXR0ZWQgaW4gYmF0Y2hlcy4gQ2hhbmdlcyBhcmUgbm90IGFwcGxpZWQgYXV0b21hdGljYWxseSBiZWNhdXNlIG90aGVyd2lzZVxuICAgKiBtaWdyYXRpb25zIHdvdWxkIG5lZWQgdG8gcmUtcmVhZCBmaWxlcywgb3IgYWNjb3VudCBmb3Igc2hpZnRlZCBmaWxlIGNvbnRlbnRzLlxuICAgKi9cbiAgYWJzdHJhY3QgZWRpdChmaWxlUGF0aDogV29ya3NwYWNlUGF0aCk6IFVwZGF0ZVJlY29yZGVyO1xuICAvKiogQXBwbGllcyBhbGwgY2hhbmdlcyB3aGljaCBoYXZlIGJlZW4gcmVjb3JkZWQgaW4gdXBkYXRlIHJlY29yZGVycy4gKi9cbiAgYWJzdHJhY3QgY29tbWl0RWRpdHMoKTogdm9pZDtcbiAgLyoqIENyZWF0ZXMgYSBuZXcgZmlsZSB3aXRoIHRoZSBnaXZlbiBjb250ZW50LiAqL1xuICBhYnN0cmFjdCBjcmVhdGUoZmlsZVBhdGg6IFdvcmtzcGFjZVBhdGgsIGNvbnRlbnQ6IHN0cmluZyk6IHZvaWQ7XG4gIC8qKiBPdmVyd3JpdGVzIGFuIGV4aXN0aW5nIGZpbGUgd2l0aCB0aGUgZ2l2ZW4gY29udGVudC4gKi9cbiAgYWJzdHJhY3Qgb3ZlcndyaXRlKGZpbGVQYXRoOiBXb3Jrc3BhY2VQYXRoLCBjb250ZW50OiBzdHJpbmcpOiB2b2lkO1xuICAvKiogRGVsZXRlcyB0aGUgZ2l2ZW4gZmlsZS4gKi9cbiAgYWJzdHJhY3QgZGVsZXRlKGZpbGVQYXRoOiBXb3Jrc3BhY2VQYXRoKTogdm9pZDtcbiAgLyoqXG4gICAqIFJlc29sdmVzIGdpdmVuIHBhdGhzIHRvIGEgcmVzb2x2ZWQgcGF0aCBpbiB0aGUgZmlsZSBzeXN0ZW0uIEZvciBleGFtcGxlLCB0aGUgZGV2a2l0XG4gICAqIHRyZWUgY29uc2lkZXJzIHRoZSBhY3R1YWwgd29ya3NwYWNlIGRpcmVjdG9yeSBhcyBmaWxlIHN5c3RlbSByb290LlxuICAgKlxuICAgKiBGb2xsb3dzIHRoZSBzYW1lIHNlbWFudGljcyBhcyB0aGUgbmF0aXZlIHBhdGggYHJlc29sdmVgIG1ldGhvZC4gaS5lLiBzZWdtZW50c1xuICAgKiBhcmUgcHJvY2Vzc2VkIGluIHJldmVyc2UuIFRoZSBsYXN0IHNlZ21lbnQgaXMgY29uc2lkZXJlZCB0aGUgdGFyZ2V0IGFuZCB0aGVcbiAgICogZnVuY3Rpb24gd2lsbCBpdGVyYXRlIGZyb20gdGhlIHRhcmdldCB0aHJvdWdoIG90aGVyIHNlZ21lbnRzIHVudGlsIGl0IGZpbmRzIGFuXG4gICAqIGFic29sdXRlIHBhdGggc2VnbWVudC5cbiAgICovXG4gIGFic3RyYWN0IHJlc29sdmUoLi4uc2VnbWVudHM6IHN0cmluZ1tdKTogV29ya3NwYWNlUGF0aDtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,74 @@
|
|
|
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 { FileSystem, WorkspacePath } from './file-system';
|
|
10
|
+
import { UpdateLogger } from './logger';
|
|
11
|
+
import { MigrationCtor } from './migration';
|
|
12
|
+
import { TargetVersion } from './target-version';
|
|
13
|
+
/**
|
|
14
|
+
* An update project that can be run against individual migrations. An update project
|
|
15
|
+
* accepts a TypeScript program and a context that is provided to all migrations. The
|
|
16
|
+
* context is usually not used by migrations, but in some cases migrations rely on
|
|
17
|
+
* specifics from the tool that performs the update (e.g. the Angular CLI). In those cases,
|
|
18
|
+
* the context can provide the necessary specifics to the migrations in a type-safe way.
|
|
19
|
+
*/
|
|
20
|
+
export declare class UpdateProject<Context> {
|
|
21
|
+
/** Context provided to all migrations. */
|
|
22
|
+
private _context;
|
|
23
|
+
/** TypeScript program using workspace paths. */
|
|
24
|
+
private _program;
|
|
25
|
+
/** File system used for reading, writing and editing files. */
|
|
26
|
+
private _fileSystem;
|
|
27
|
+
/**
|
|
28
|
+
* Set of analyzed files. Used for avoiding multiple migration runs if
|
|
29
|
+
* files overlap between targets.
|
|
30
|
+
*/
|
|
31
|
+
private _analyzedFiles;
|
|
32
|
+
/** Logger used for printing messages. */
|
|
33
|
+
private _logger;
|
|
34
|
+
private readonly _typeChecker;
|
|
35
|
+
constructor(
|
|
36
|
+
/** Context provided to all migrations. */
|
|
37
|
+
_context: Context,
|
|
38
|
+
/** TypeScript program using workspace paths. */
|
|
39
|
+
_program: ts.Program,
|
|
40
|
+
/** File system used for reading, writing and editing files. */
|
|
41
|
+
_fileSystem: FileSystem,
|
|
42
|
+
/**
|
|
43
|
+
* Set of analyzed files. Used for avoiding multiple migration runs if
|
|
44
|
+
* files overlap between targets.
|
|
45
|
+
*/
|
|
46
|
+
_analyzedFiles?: Set<WorkspacePath>,
|
|
47
|
+
/** Logger used for printing messages. */
|
|
48
|
+
_logger?: UpdateLogger);
|
|
49
|
+
/**
|
|
50
|
+
* Migrates the project to the specified target version.
|
|
51
|
+
* @param migrationTypes Migrations that should be run.
|
|
52
|
+
* @param target Version the project should be updated to. Can be `null` if the set of
|
|
53
|
+
* specified migrations runs regardless of a target version.
|
|
54
|
+
* @param data Upgrade data that is passed to all migration rules.
|
|
55
|
+
* @param additionalStylesheetPaths Additional stylesheets that should be migrated, if not
|
|
56
|
+
* referenced in an Angular component. This is helpful for global stylesheets in a project.
|
|
57
|
+
* @param limitToDirectory If specified, changes will be limited to the given directory.
|
|
58
|
+
*/
|
|
59
|
+
migrate<Data>(migrationTypes: MigrationCtor<Data, Context>[], target: TargetVersion | null, data: Data, additionalStylesheetPaths?: string[], limitToDirectory?: string): {
|
|
60
|
+
hasFailures: boolean;
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* Creates instances of the given migrations with the specified target
|
|
64
|
+
* version and data.
|
|
65
|
+
*/
|
|
66
|
+
private _createMigrations;
|
|
67
|
+
/**
|
|
68
|
+
* Creates a program form the specified tsconfig and patches the host
|
|
69
|
+
* to read files and directories through the given file system.
|
|
70
|
+
*
|
|
71
|
+
* @throws {TsconfigParseError} If the tsconfig could not be parsed.
|
|
72
|
+
*/
|
|
73
|
+
static createProgramFromTsconfig(tsconfigPath: WorkspacePath, fs: FileSystem): ts.Program;
|
|
74
|
+
}
|