@angular/cdk 13.0.0-next.6 → 13.0.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/a11y/a11y-module.d.ts +9 -7
- package/a11y/aria-describer/aria-describer.d.ts +3 -7
- package/a11y/focus-monitor/focus-monitor.d.ts +5 -0
- package/a11y/focus-trap/configurable-focus-trap-factory.d.ts +3 -7
- package/a11y/focus-trap/focus-trap-manager.d.ts +3 -7
- package/a11y/focus-trap/focus-trap.d.ts +5 -0
- package/a11y/high-contrast-mode/high-contrast-mode-detector.d.ts +3 -0
- package/a11y/index.d.ts +0 -1
- package/a11y/input-modality/input-modality-detector.d.ts +3 -7
- package/a11y/interactivity-checker/interactivity-checker.d.ts +3 -0
- package/a11y/live-announcer/live-announcer.d.ts +6 -1
- package/a11y/package.json +5 -5
- package/accordion/accordion-item.d.ts +3 -0
- package/accordion/accordion-module.d.ts +6 -7
- package/accordion/accordion.d.ts +3 -0
- package/accordion/index.d.ts +0 -1
- package/accordion/package.json +5 -5
- package/bidi/bidi-module.d.ts +5 -7
- package/bidi/dir.d.ts +3 -0
- package/bidi/directionality.d.ts +3 -0
- package/bidi/index.d.ts +0 -1
- package/bidi/package.json +5 -5
- package/clipboard/clipboard-module.d.ts +5 -7
- package/clipboard/clipboard.d.ts +3 -7
- package/clipboard/copy-to-clipboard.d.ts +3 -0
- package/clipboard/package.json +5 -5
- package/coercion/package.json +5 -5
- package/collections/package.json +5 -5
- package/collections/unique-selection-dispatcher.d.ts +3 -0
- package/drag-drop/client-rect.d.ts +8 -1
- package/drag-drop/directives/drag-handle.d.ts +3 -0
- package/drag-drop/directives/drag-placeholder.d.ts +3 -0
- package/drag-drop/directives/drag-preview.d.ts +3 -0
- package/drag-drop/directives/drag.d.ts +3 -0
- package/drag-drop/directives/drop-list-group.d.ts +3 -0
- package/drag-drop/directives/drop-list.d.ts +3 -0
- package/drag-drop/drag-drop-module.d.ts +11 -7
- package/drag-drop/drag-drop-registry.d.ts +3 -0
- package/drag-drop/drag-drop.d.ts +3 -0
- package/drag-drop/index.d.ts +0 -1
- package/drag-drop/package.json +5 -5
- package/esm2020/a11y/a11y-module.mjs +33 -0
- package/esm2020/a11y/aria-describer/aria-describer.mjs +208 -0
- package/{esm2015/a11y/aria-describer/aria-reference.js → esm2020/a11y/aria-describer/aria-reference.mjs} +1 -1
- package/esm2020/a11y/fake-event-detection.mjs +29 -0
- package/esm2020/a11y/focus-monitor/focus-monitor.mjs +400 -0
- package/{esm2015/a11y/focus-trap/configurable-focus-trap-config.js → esm2020/a11y/focus-trap/configurable-focus-trap-config.mjs} +0 -0
- package/esm2020/a11y/focus-trap/configurable-focus-trap-factory.mjs +53 -0
- package/esm2020/a11y/focus-trap/configurable-focus-trap.mjs +51 -0
- package/esm2020/a11y/focus-trap/event-listener-inert-strategy.mjs +61 -0
- package/esm2020/a11y/focus-trap/focus-trap-inert-strategy.mjs +11 -0
- package/esm2020/a11y/focus-trap/focus-trap-manager.mjs +53 -0
- package/esm2020/a11y/focus-trap/focus-trap.mjs +399 -0
- package/esm2020/a11y/high-contrast-mode/high-contrast-mode-detector.mjs +95 -0
- package/esm2020/a11y/index.mjs +5 -0
- package/esm2020/a11y/input-modality/input-modality-detector.mjs +176 -0
- package/esm2020/a11y/interactivity-checker/interactivity-checker.mjs +238 -0
- package/{esm2015/a11y/key-manager/activedescendant-key-manager.js → esm2020/a11y/key-manager/activedescendant-key-manager.mjs} +1 -1
- package/{esm2015/a11y/key-manager/focus-key-manager.js → esm2020/a11y/key-manager/focus-key-manager.mjs} +0 -0
- package/esm2020/a11y/key-manager/list-key-manager.mjs +321 -0
- package/esm2020/a11y/live-announcer/live-announcer-tokens.mjs +19 -0
- package/esm2020/a11y/live-announcer/live-announcer.mjs +170 -0
- package/{esm2015/a11y/public-api.js → esm2020/a11y/public-api.mjs} +0 -0
- package/esm2020/accordion/accordion-item.mjs +167 -0
- package/esm2020/accordion/accordion-module.mjs +24 -0
- package/esm2020/accordion/accordion.mjs +70 -0
- package/esm2020/accordion/index.mjs +5 -0
- package/{esm2015/accordion/public-api.js → esm2020/accordion/public-api.mjs} +0 -0
- package/esm2020/bidi/bidi-module.mjs +23 -0
- package/{esm2015/bidi/dir-document-token.js → esm2020/bidi/dir-document-token.mjs} +1 -1
- package/esm2020/bidi/dir.mjs +67 -0
- package/esm2020/bidi/directionality.mjs +47 -0
- package/esm2020/bidi/index.mjs +5 -0
- package/{esm2015/bidi/public-api.js → esm2020/bidi/public-api.mjs} +1 -1
- package/esm2020/clipboard/clipboard-module.mjs +23 -0
- package/esm2020/clipboard/clipboard.mjs +53 -0
- package/esm2020/clipboard/copy-to-clipboard.mjs +99 -0
- package/{esm2015/clipboard/index.js → esm2020/clipboard/index.mjs} +0 -0
- package/esm2020/clipboard/pending-copy.mjs +67 -0
- package/{esm2015/clipboard/public-api.js → esm2020/clipboard/public-api.mjs} +0 -0
- package/{esm2015/coercion/array.js → esm2020/coercion/array.mjs} +0 -0
- package/{esm2015/coercion/boolean-property.js → esm2020/coercion/boolean-property.mjs} +0 -0
- package/{esm2015/coercion/css-pixel-value.js → esm2020/coercion/css-pixel-value.mjs} +0 -0
- package/{esm2015/coercion/element.js → esm2020/coercion/element.mjs} +0 -0
- package/{esm2015/coercion/index.js → esm2020/coercion/index.mjs} +0 -0
- package/{esm2015/coercion/number-property.js → esm2020/coercion/number-property.mjs} +0 -0
- package/{esm2015/coercion/public-api.js → esm2020/coercion/public-api.mjs} +0 -0
- package/{esm2015/coercion/string-array.js → esm2020/coercion/string-array.mjs} +0 -0
- package/{esm2015/collections/array-data-source.js → esm2020/collections/array-data-source.mjs} +1 -1
- package/esm2020/collections/collection-viewer.mjs +9 -0
- package/{esm2015/collections/data-source.js → esm2020/collections/data-source.mjs} +0 -0
- package/esm2020/collections/dispose-view-repeater-strategy.mjs +47 -0
- package/{esm2015/collections/index.js → esm2020/collections/index.mjs} +0 -0
- package/{esm2015/collections/public-api.js → esm2020/collections/public-api.mjs} +0 -0
- package/esm2020/collections/recycle-view-repeater-strategy.mjs +128 -0
- package/{esm2015/collections/selection-model.js → esm2020/collections/selection-model.mjs} +2 -2
- package/esm2020/collections/tree-adapter.mjs +9 -0
- package/esm2020/collections/unique-selection-dispatcher.mjs +55 -0
- package/esm2020/collections/view-repeater.mjs +14 -0
- package/esm2020/drag-drop/client-rect.mjs +64 -0
- package/esm2020/drag-drop/clone-node.mjs +65 -0
- package/esm2020/drag-drop/directives/assertions.mjs +18 -0
- package/{esm2015/drag-drop/directives/config.js → esm2020/drag-drop/directives/config.mjs} +1 -1
- package/esm2020/drag-drop/directives/drag-handle.mjs +66 -0
- package/esm2020/drag-drop/directives/drag-placeholder.mjs +36 -0
- package/esm2020/drag-drop/directives/drag-preview.mjs +47 -0
- package/esm2020/drag-drop/directives/drag.mjs +483 -0
- package/esm2020/drag-drop/directives/drop-list-group.mjs +53 -0
- package/esm2020/drag-drop/directives/drop-list.mjs +344 -0
- package/esm2020/drag-drop/drag-drop-module.mjs +57 -0
- package/esm2020/drag-drop/drag-drop-registry.mjs +231 -0
- package/esm2020/drag-drop/drag-drop.mjs +57 -0
- package/esm2020/drag-drop/drag-events.mjs +9 -0
- package/{esm2015/drag-drop/drag-parent.js → esm2020/drag-drop/drag-parent.mjs} +0 -0
- package/esm2020/drag-drop/drag-ref.mjs +1108 -0
- package/esm2020/drag-drop/drag-styling.mjs +69 -0
- package/esm2020/drag-drop/drag-utils.mjs +60 -0
- package/esm2020/drag-drop/drop-list-ref.mjs +830 -0
- package/{esm2015/drag-drop/index.js → esm2020/drag-drop/index.mjs} +1 -1
- package/{esm2015/drag-drop/parent-position-tracker.js → esm2020/drag-drop/parent-position-tracker.mjs} +2 -2
- package/{esm2015/drag-drop/public-api.js → esm2020/drag-drop/public-api.mjs} +0 -0
- package/esm2020/drag-drop/transition-duration.mjs +36 -0
- package/{esm2015/index.js → esm2020/index.mjs} +0 -0
- package/{esm2015/keycodes/index.js → esm2020/keycodes/index.mjs} +0 -0
- package/{esm2015/keycodes/keycodes.js → esm2020/keycodes/keycodes.mjs} +1 -1
- package/{esm2015/keycodes/modifiers.js → esm2020/keycodes/modifiers.mjs} +0 -0
- package/{esm2015/keycodes/public-api.js → esm2020/keycodes/public-api.mjs} +0 -0
- package/esm2020/layout/breakpoints-observer.mjs +105 -0
- package/{esm2015/layout/breakpoints.js → esm2020/layout/breakpoints.mjs} +1 -1
- package/{esm2015/layout/index.js → esm2020/layout/index.mjs} +0 -0
- package/esm2020/layout/layout-module.mjs +19 -0
- package/esm2020/layout/media-matcher.mjs +85 -0
- package/{esm2015/layout/public-api.js → esm2020/layout/public-api.mjs} +0 -0
- package/{esm2015/observers/index.js → esm2020/observers/index.mjs} +0 -0
- package/esm2020/observers/observe-content.mjs +187 -0
- package/{esm2015/observers/public-api.js → esm2020/observers/public-api.mjs} +0 -0
- package/esm2020/overlay/dispatchers/base-overlay-dispatcher.mjs +52 -0
- package/{esm2015/overlay/dispatchers/index.js → esm2020/overlay/dispatchers/index.mjs} +0 -0
- package/esm2020/overlay/dispatchers/overlay-keyboard-dispatcher.mjs +63 -0
- package/esm2020/overlay/dispatchers/overlay-outside-click-dispatcher.mjs +116 -0
- package/esm2020/overlay/fullscreen-overlay-container.mjs +94 -0
- package/esm2020/overlay/index.mjs +5 -0
- package/esm2020/overlay/overlay-config.mjs +45 -0
- package/esm2020/overlay/overlay-container.mjs +81 -0
- package/esm2020/overlay/overlay-directives.mjs +427 -0
- package/esm2020/overlay/overlay-module.mjs +29 -0
- package/esm2020/overlay/overlay-ref.mjs +402 -0
- package/{esm2015/overlay/overlay-reference.js → esm2020/overlay/overlay-reference.mjs} +0 -0
- package/esm2020/overlay/overlay.mjs +119 -0
- package/esm2020/overlay/position/connected-position.mjs +97 -0
- package/esm2020/overlay/position/flexible-connected-position-strategy.mjs +959 -0
- package/esm2020/overlay/position/global-position-strategy.mjs +203 -0
- package/esm2020/overlay/position/overlay-position-builder.mjs +50 -0
- package/{esm2015/overlay/position/position-strategy.js → esm2020/overlay/position/position-strategy.mjs} +0 -0
- package/esm2020/overlay/position/scroll-clip.mjs +40 -0
- package/{esm2015/overlay/public-api.js → esm2020/overlay/public-api.mjs} +0 -0
- package/{esm2015/overlay/scroll/block-scroll-strategy.js → esm2020/overlay/scroll/block-scroll-strategy.mjs} +1 -1
- package/esm2020/overlay/scroll/close-scroll-strategy.mjs +61 -0
- package/{esm2015/overlay/scroll/index.js → esm2020/overlay/scroll/index.mjs} +2 -2
- package/{esm2015/overlay/scroll/noop-scroll-strategy.js → esm2020/overlay/scroll/noop-scroll-strategy.mjs} +1 -1
- package/{esm2015/overlay/scroll/reposition-scroll-strategy.js → esm2020/overlay/scroll/reposition-scroll-strategy.mjs} +1 -1
- package/esm2020/overlay/scroll/scroll-strategy-options.mjs +55 -0
- package/{esm2015/overlay/scroll/scroll-strategy.js → esm2020/overlay/scroll/scroll-strategy.mjs} +0 -0
- package/{esm2015/platform/features/input-types.js → esm2020/platform/features/input-types.mjs} +1 -1
- package/esm2020/platform/features/passive-listeners.mjs +36 -0
- package/esm2020/platform/features/scrolling.mjs +85 -0
- package/{esm2015/platform/features/shadow-dom.js → esm2020/platform/features/shadow-dom.mjs} +4 -3
- package/esm2020/platform/features/test-environment.mjs +27 -0
- package/{esm2015/platform/index.js → esm2020/platform/index.mjs} +0 -0
- package/esm2020/platform/platform-module.mjs +19 -0
- package/esm2020/platform/platform.mjs +85 -0
- package/{esm2015/platform/public-api.js → esm2020/platform/public-api.mjs} +0 -0
- package/esm2020/portal/dom-portal-outlet.mjs +134 -0
- package/{esm2015/portal/index.js → esm2020/portal/index.mjs} +0 -0
- package/esm2020/portal/portal-directives.mjs +244 -0
- package/{esm2015/portal/portal-errors.js → esm2020/portal/portal-errors.mjs} +1 -1
- package/esm2020/portal/portal-injector.mjs +28 -0
- package/esm2020/portal/portal.mjs +179 -0
- package/{esm2015/portal/public-api.js → esm2020/portal/public-api.mjs} +0 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- package/esm2020/scrolling/fixed-size-virtual-scroll.mjs +217 -0
- package/{esm2015/scrolling/index.js → esm2020/scrolling/index.mjs} +0 -0
- package/{esm2015/scrolling/public-api.js → esm2020/scrolling/public-api.mjs} +0 -0
- package/esm2020/scrolling/scroll-dispatcher.mjs +163 -0
- package/esm2020/scrolling/scrollable.mjs +176 -0
- package/esm2020/scrolling/scrolling-module.mjs +52 -0
- package/esm2020/scrolling/viewport-ruler.mjs +146 -0
- package/esm2020/scrolling/virtual-for-of.mjs +296 -0
- package/{esm2015/scrolling/virtual-scroll-repeater.js → esm2020/scrolling/virtual-scroll-repeater.mjs} +0 -0
- package/esm2020/scrolling/virtual-scroll-strategy.mjs +11 -0
- package/esm2020/scrolling/virtual-scroll-viewport.mjs +378 -0
- package/{esm2015/stepper/index.js → esm2020/stepper/index.mjs} +0 -0
- package/{esm2015/stepper/public-api.js → esm2020/stepper/public-api.mjs} +0 -0
- package/esm2020/stepper/step-header.mjs +30 -0
- package/esm2020/stepper/step-label.mjs +23 -0
- package/esm2020/stepper/stepper-button.mjs +76 -0
- package/esm2020/stepper/stepper-module.mjs +40 -0
- package/esm2020/stepper/stepper.mjs +471 -0
- package/esm2020/table/can-stick.mjs +44 -0
- package/esm2020/table/cell.mjs +222 -0
- package/esm2020/table/coalesced-style-scheduler.mjs +91 -0
- package/{esm2015/table/index.js → esm2020/table/index.mjs} +0 -0
- package/{esm2015/table/public-api.js → esm2020/table/public-api.mjs} +0 -0
- package/esm2020/table/row.mjs +254 -0
- package/esm2020/table/sticky-position-listener.mjs +11 -0
- package/esm2020/table/sticky-styler.mjs +345 -0
- package/{esm2015/table/table-errors.js → esm2020/table/table-errors.mjs} +1 -1
- package/esm2020/table/table-module.mjs +94 -0
- package/esm2020/table/table.mjs +1023 -0
- package/esm2020/table/text-column.mjs +153 -0
- package/{esm2015/table/tokens.js → esm2020/table/tokens.mjs} +1 -1
- package/esm2020/testing/change-detection.mjs +102 -0
- package/esm2020/testing/component-harness.mjs +322 -0
- package/{esm2015/testing/element-dimensions.js → esm2020/testing/element-dimensions.mjs} +1 -1
- package/esm2020/testing/harness-environment.mjs +202 -0
- package/{esm2015/testing/index.js → esm2020/testing/index.mjs} +0 -0
- package/{esm2015/testing/protractor/index.js → esm2020/testing/protractor/index.mjs} +0 -0
- package/esm2020/testing/protractor/protractor-element.mjs +234 -0
- package/esm2020/testing/protractor/protractor-harness-environment.mjs +72 -0
- package/{esm2015/testing/protractor/public-api.js → esm2020/testing/protractor/public-api.mjs} +0 -0
- package/{esm2015/testing/public-api.js → esm2020/testing/public-api.mjs} +0 -0
- package/{esm2015/testing/selenium-webdriver/index.js → esm2020/testing/selenium-webdriver/index.mjs} +0 -0
- package/{esm2015/testing/selenium-webdriver/public-api.js → esm2020/testing/selenium-webdriver/public-api.mjs} +0 -0
- package/esm2020/testing/selenium-webdriver/selenium-web-driver-element.mjs +199 -0
- package/esm2020/testing/selenium-webdriver/selenium-web-driver-harness-environment.mjs +87 -0
- package/{esm2015/testing/selenium-webdriver/selenium-webdriver-keys.js → esm2020/testing/selenium-webdriver/selenium-webdriver-keys.mjs} +2 -2
- package/esm2020/testing/test-element.mjs +48 -0
- package/esm2020/testing/testbed/fake-events/dispatch-events.mjs +53 -0
- package/esm2020/testing/testbed/fake-events/element-focus.mjs +39 -0
- package/esm2020/testing/testbed/fake-events/event-objects.mjs +113 -0
- package/{esm2015/testing/testbed/fake-events/index.js → esm2020/testing/testbed/fake-events/index.mjs} +0 -0
- package/esm2020/testing/testbed/fake-events/type-in-element.mjs +88 -0
- package/{esm2015/testing/testbed/index.js → esm2020/testing/testbed/index.mjs} +0 -0
- package/{esm2015/testing/testbed/public-api.js → esm2020/testing/testbed/public-api.mjs} +0 -0
- package/esm2020/testing/testbed/task-state-zone-interceptor.mjs +82 -0
- package/esm2020/testing/testbed/testbed-harness-environment.mjs +162 -0
- package/esm2020/testing/testbed/unit-test-element.mjs +224 -0
- package/esm2020/testing/text-filtering.mjs +21 -0
- package/esm2020/text-field/autofill.mjs +113 -0
- package/esm2020/text-field/autosize.mjs +310 -0
- package/{esm2015/text-field/index.js → esm2020/text-field/index.mjs} +0 -0
- package/{esm2015/text-field/public-api.js → esm2020/text-field/public-api.mjs} +0 -0
- package/esm2020/text-field/text-field-module.mjs +26 -0
- package/{esm2015/tree/control/base-tree-control.js → esm2020/tree/control/base-tree-control.mjs} +4 -4
- package/{esm2015/tree/control/flat-tree-control.js → esm2020/tree/control/flat-tree-control.mjs} +1 -1
- package/esm2020/tree/control/nested-tree-control.mjs +58 -0
- package/{esm2015/tree/control/tree-control.js → esm2020/tree/control/tree-control.mjs} +0 -0
- package/{esm2015/tree/index.js → esm2020/tree/index.mjs} +0 -0
- package/esm2020/tree/nested-node.mjs +117 -0
- package/esm2020/tree/node.mjs +35 -0
- package/esm2020/tree/outlet.mjs +39 -0
- package/esm2020/tree/padding.mjs +131 -0
- package/{esm2015/tree/public-api.js → esm2020/tree/public-api.mjs} +0 -0
- package/esm2020/tree/toggle.mjs +53 -0
- package/{esm2015/tree/tree-errors.js → esm2020/tree/tree-errors.mjs} +0 -0
- package/esm2020/tree/tree-module.mjs +49 -0
- package/esm2020/tree/tree.mjs +361 -0
- package/{esm2015/version.js → esm2020/version.mjs} +1 -1
- package/fesm2015/a11y.mjs +2356 -0
- package/fesm2015/a11y.mjs.map +1 -0
- package/fesm2015/accordion.mjs +267 -0
- package/fesm2015/accordion.mjs.map +1 -0
- package/fesm2015/bidi.mjs +179 -0
- package/fesm2015/bidi.mjs.map +1 -0
- package/fesm2015/{cdk.js → cdk.mjs} +2 -2
- package/fesm2015/cdk.mjs.map +1 -0
- package/fesm2015/clipboard.mjs +253 -0
- package/fesm2015/clipboard.mjs.map +1 -0
- package/fesm2015/{coercion.js → coercion.mjs} +1 -1
- package/fesm2015/coercion.mjs.map +1 -0
- package/fesm2015/{collections.js → collections.mjs} +15 -27
- package/fesm2015/collections.mjs.map +1 -0
- package/fesm2015/drag-drop.mjs +3667 -0
- package/fesm2015/drag-drop.mjs.map +1 -0
- package/fesm2015/{keycodes.js → keycodes.mjs} +1 -1
- package/fesm2015/keycodes.mjs.map +1 -0
- package/fesm2015/{layout.js → layout.mjs} +30 -28
- package/fesm2015/layout.mjs.map +1 -0
- package/fesm2015/{observers.js → observers.mjs} +50 -41
- package/fesm2015/observers.mjs.map +1 -0
- package/fesm2015/overlay.mjs +3004 -0
- package/fesm2015/overlay.mjs.map +1 -0
- package/fesm2015/platform.mjs +380 -0
- package/fesm2015/platform.mjs.map +1 -0
- package/fesm2015/portal.mjs +649 -0
- package/fesm2015/portal.mjs.map +1 -0
- package/fesm2015/scrolling.mjs +1394 -0
- package/fesm2015/scrolling.mjs.map +1 -0
- package/fesm2015/{stepper.js → stepper.mjs} +186 -133
- package/fesm2015/stepper.mjs.map +1 -0
- package/fesm2015/{table.js → table.mjs} +500 -359
- package/fesm2015/table.mjs.map +1 -0
- package/fesm2015/testing/{protractor.js → protractor.mjs} +12 -25
- package/fesm2015/testing/protractor.mjs.map +1 -0
- package/fesm2015/testing/{selenium-webdriver.js → selenium-webdriver.mjs} +14 -28
- package/fesm2015/testing/selenium-webdriver.mjs.map +1 -0
- package/fesm2015/testing/{testbed.js → testbed.mjs} +23 -29
- package/fesm2015/testing/testbed.mjs.map +1 -0
- package/fesm2015/{testing.js → testing.mjs} +19 -45
- package/fesm2015/testing.mjs.map +1 -0
- package/fesm2015/text-field.mjs +455 -0
- package/fesm2015/text-field.mjs.map +1 -0
- package/fesm2015/{tree.js → tree.mjs} +198 -152
- package/fesm2015/tree.mjs.map +1 -0
- package/{fesm2015/a11y.js → fesm2020/a11y.mjs} +272 -233
- package/fesm2020/a11y.mjs.map +1 -0
- package/{fesm2015/accordion.js → fesm2020/accordion.mjs} +87 -57
- package/fesm2020/accordion.mjs.map +1 -0
- package/{fesm2015/bidi.js → fesm2020/bidi.mjs} +47 -31
- package/fesm2020/bidi.mjs.map +1 -0
- package/fesm2020/cdk.mjs +30 -0
- package/fesm2020/cdk.mjs.map +1 -0
- package/{fesm2015/clipboard.js → fesm2020/clipboard.mjs} +51 -40
- package/fesm2020/clipboard.mjs.map +1 -0
- package/fesm2020/coercion.mjs +132 -0
- package/fesm2020/coercion.mjs.map +1 -0
- package/fesm2020/collections.mjs +472 -0
- package/fesm2020/collections.mjs.map +1 -0
- package/{fesm2015/drag-drop.js → fesm2020/drag-drop.mjs} +523 -366
- package/fesm2020/drag-drop.mjs.map +1 -0
- package/fesm2020/keycodes.mjs +159 -0
- package/fesm2020/keycodes.mjs.map +1 -0
- package/fesm2020/layout.mjs +246 -0
- package/fesm2020/layout.mjs.map +1 -0
- package/fesm2020/observers.mjs +202 -0
- package/fesm2020/observers.mjs.map +1 -0
- package/{fesm2015/overlay.js → fesm2020/overlay.mjs} +312 -228
- package/fesm2020/overlay.mjs.map +1 -0
- package/{fesm2015/platform.js → fesm2020/platform.mjs} +52 -28
- package/fesm2020/platform.mjs.map +1 -0
- package/{fesm2015/portal.js → fesm2020/portal.mjs} +85 -64
- package/fesm2020/portal.mjs.map +1 -0
- package/{fesm2015/scrolling.js → fesm2020/scrolling.mjs} +213 -170
- package/fesm2020/scrolling.mjs.map +1 -0
- package/fesm2020/stepper.mjs +638 -0
- package/fesm2020/stepper.mjs.map +1 -0
- package/fesm2020/table.mjs +2295 -0
- package/fesm2020/table.mjs.map +1 -0
- package/fesm2020/testing/protractor.mjs +322 -0
- package/fesm2020/testing/protractor.mjs.map +1 -0
- package/fesm2020/testing/selenium-webdriver.mjs +362 -0
- package/fesm2020/testing/selenium-webdriver.mjs.map +1 -0
- package/fesm2020/testing/testbed.mjs +780 -0
- package/fesm2020/testing/testbed.mjs.map +1 -0
- package/fesm2020/testing.mjs +719 -0
- package/fesm2020/testing.mjs.map +1 -0
- package/{fesm2015/text-field.js → fesm2020/text-field.mjs} +83 -68
- package/fesm2020/text-field.mjs.map +1 -0
- package/fesm2020/tree.mjs +967 -0
- package/fesm2020/tree.mjs.map +1 -0
- package/keycodes/package.json +5 -5
- package/layout/breakpoints-observer.d.ts +3 -7
- package/layout/layout-module.d.ts +4 -0
- package/layout/media-matcher.d.ts +3 -0
- package/layout/package.json +5 -5
- package/observers/observe-content.d.ts +10 -0
- package/observers/package.json +5 -5
- package/overlay/dispatchers/base-overlay-dispatcher.d.ts +3 -7
- package/overlay/dispatchers/overlay-keyboard-dispatcher.d.ts +3 -7
- package/overlay/dispatchers/overlay-outside-click-dispatcher.d.ts +6 -7
- package/overlay/fullscreen-overlay-container.d.ts +3 -0
- package/overlay/index.d.ts +0 -2
- package/overlay/overlay-container.d.ts +3 -7
- package/overlay/overlay-directives.d.ts +5 -0
- package/overlay/overlay-module.d.ts +8 -7
- package/overlay/overlay.d.ts +3 -0
- package/overlay/package.json +5 -5
- package/overlay/position/flexible-connected-position-strategy.d.ts +2 -2
- package/overlay/position/overlay-position-builder.d.ts +3 -0
- package/overlay/position/scroll-clip.d.ts +5 -2
- package/overlay/scroll/index.d.ts +1 -1
- package/overlay/scroll/scroll-strategy-options.d.ts +3 -0
- package/package.json +219 -7
- package/platform/package.json +5 -5
- package/platform/platform-module.d.ts +4 -7
- package/platform/platform.d.ts +3 -7
- package/portal/package.json +5 -5
- package/portal/portal-directives.d.ts +12 -0
- package/schematics/ng-add/index.js +3 -3
- package/schematics/ng-add/index.mjs +3 -3
- package/schematics/ng-add/package-config.js +4 -2
- package/schematics/ng-add/package-config.mjs +4 -2
- package/schematics/ng-add/schema.js +1 -1
- package/schematics/ng-add/schema.mjs +1 -1
- package/schematics/ng-generate/drag-drop/index.js +6 -6
- package/schematics/ng-generate/drag-drop/index.mjs +6 -6
- package/schematics/ng-update/data/attribute-selectors.js +7 -5
- package/schematics/ng-update/data/attribute-selectors.mjs +7 -5
- package/schematics/ng-update/data/class-names.js +13 -11
- package/schematics/ng-update/data/class-names.mjs +13 -11
- package/schematics/ng-update/data/constructor-checks.js +28 -20
- package/schematics/ng-update/data/constructor-checks.mjs +28 -20
- package/schematics/ng-update/data/css-selectors.js +2 -2
- package/schematics/ng-update/data/css-selectors.mjs +2 -2
- package/schematics/ng-update/data/element-selectors.js +2 -2
- package/schematics/ng-update/data/element-selectors.mjs +2 -2
- package/schematics/ng-update/data/input-names.js +40 -16
- package/schematics/ng-update/data/input-names.mjs +40 -16
- package/schematics/ng-update/data/method-call-checks.js +32 -18
- package/schematics/ng-update/data/method-call-checks.mjs +32 -18
- package/schematics/ng-update/data/output-names.js +8 -6
- package/schematics/ng-update/data/output-names.mjs +8 -6
- package/schematics/ng-update/data/property-names.js +40 -32
- package/schematics/ng-update/data/property-names.mjs +40 -32
- package/schematics/ng-update/devkit-file-system.js +2 -2
- package/schematics/ng-update/devkit-file-system.mjs +2 -2
- package/schematics/ng-update/devkit-migration-rule.js +8 -7
- package/schematics/ng-update/devkit-migration-rule.mjs +8 -7
- package/schematics/ng-update/devkit-migration.d.ts +1 -1
- package/schematics/ng-update/devkit-migration.js +1 -1
- package/schematics/ng-update/devkit-migration.mjs +1 -1
- package/schematics/ng-update/find-stylesheets.js +3 -3
- package/schematics/ng-update/find-stylesheets.mjs +3 -3
- package/schematics/ng-update/html-parsing/angular.js +7 -7
- package/schematics/ng-update/html-parsing/angular.mjs +7 -7
- package/schematics/ng-update/html-parsing/elements.js +2 -2
- package/schematics/ng-update/html-parsing/elements.mjs +2 -2
- package/schematics/ng-update/index.js +11 -9
- package/schematics/ng-update/index.mjs +11 -9
- package/schematics/ng-update/migrations/attribute-selectors.js +11 -7
- package/schematics/ng-update/migrations/attribute-selectors.mjs +11 -7
- package/schematics/ng-update/migrations/class-inheritance.js +3 -3
- package/schematics/ng-update/migrations/class-inheritance.mjs +3 -3
- package/schematics/ng-update/migrations/class-names.js +7 -6
- package/schematics/ng-update/migrations/class-names.mjs +7 -6
- package/schematics/ng-update/migrations/constructor-signature.js +16 -13
- package/schematics/ng-update/migrations/constructor-signature.mjs +16 -13
- package/schematics/ng-update/migrations/css-selectors.js +7 -6
- package/schematics/ng-update/migrations/css-selectors.mjs +7 -6
- package/schematics/ng-update/migrations/element-selectors.js +7 -6
- package/schematics/ng-update/migrations/element-selectors.mjs +7 -6
- package/schematics/ng-update/migrations/input-names.js +8 -9
- package/schematics/ng-update/migrations/input-names.mjs +8 -9
- package/schematics/ng-update/migrations/method-call-arguments.js +4 -3
- package/schematics/ng-update/migrations/method-call-arguments.mjs +4 -3
- package/schematics/ng-update/migrations/misc-template.js +3 -3
- package/schematics/ng-update/migrations/misc-template.mjs +3 -3
- package/schematics/ng-update/migrations/output-names.js +7 -8
- package/schematics/ng-update/migrations/output-names.mjs +7 -8
- package/schematics/ng-update/migrations/property-names.js +4 -3
- package/schematics/ng-update/migrations/property-names.mjs +4 -3
- package/schematics/ng-update/migrations/symbol-removal.js +2 -2
- package/schematics/ng-update/migrations/symbol-removal.mjs +2 -2
- package/schematics/ng-update/migrations/tilde-import-v13/tilde-import-migration.d.ts +14 -0
- package/schematics/ng-update/migrations/tilde-import-v13/tilde-import-migration.js +38 -0
- package/schematics/ng-update/migrations/tilde-import-v13/tilde-import-migration.mjs +38 -0
- package/schematics/ng-update/typescript/base-types.js +1 -1
- package/schematics/ng-update/typescript/base-types.mjs +1 -1
- package/schematics/ng-update/typescript/literal.d.ts +1 -1
- package/schematics/ng-update/typescript/literal.js +1 -1
- package/schematics/ng-update/typescript/literal.mjs +1 -1
- package/schematics/ng-update/typescript/module-specifiers.js +5 -5
- package/schematics/ng-update/typescript/module-specifiers.mjs +5 -5
- package/schematics/ng-update/upgrade-data.js +2 -2
- package/schematics/ng-update/upgrade-data.mjs +2 -2
- package/schematics/package.json +3 -0
- package/schematics/paths.js +3 -3
- package/schematics/paths.mjs +3 -3
- package/schematics/update-tool/component-resource-collector.js +10 -10
- package/schematics/update-tool/component-resource-collector.mjs +10 -10
- package/schematics/update-tool/file-system.js +1 -1
- package/schematics/update-tool/file-system.mjs +1 -1
- package/schematics/update-tool/index.d.ts +4 -1
- package/schematics/update-tool/index.js +9 -5
- package/schematics/update-tool/index.mjs +9 -5
- package/schematics/update-tool/migration.d.ts +1 -1
- package/schematics/update-tool/migration.js +1 -1
- package/schematics/update-tool/migration.mjs +1 -1
- package/schematics/update-tool/target-version.js +1 -1
- package/schematics/update-tool/target-version.mjs +1 -1
- package/schematics/update-tool/utils/decorators.js +8 -4
- package/schematics/update-tool/utils/decorators.mjs +8 -4
- package/schematics/update-tool/utils/functions.js +1 -1
- package/schematics/update-tool/utils/functions.mjs +1 -1
- package/schematics/update-tool/utils/imports.js +2 -2
- package/schematics/update-tool/utils/imports.mjs +2 -2
- package/schematics/update-tool/utils/line-mappings.js +1 -1
- package/schematics/update-tool/utils/line-mappings.mjs +1 -1
- package/schematics/update-tool/utils/parse-tsconfig.js +2 -2
- package/schematics/update-tool/utils/parse-tsconfig.mjs +2 -2
- package/schematics/update-tool/utils/property-name.js +1 -1
- package/schematics/update-tool/utils/property-name.mjs +1 -1
- package/schematics/update-tool/utils/virtual-host.d.ts +1 -1
- package/schematics/update-tool/utils/virtual-host.js +3 -3
- package/schematics/update-tool/utils/virtual-host.mjs +3 -3
- package/schematics/update-tool/version-changes.js +1 -1
- package/schematics/update-tool/version-changes.mjs +1 -1
- package/schematics/utils/ast/ng-module-imports.js +5 -3
- package/schematics/utils/ast/ng-module-imports.mjs +5 -3
- package/schematics/utils/ast.js +5 -5
- package/schematics/utils/ast.mjs +5 -5
- package/schematics/utils/build-component.js +32 -38
- package/schematics/utils/build-component.mjs +32 -38
- package/schematics/utils/get-project.js +1 -1
- package/schematics/utils/get-project.mjs +1 -1
- package/schematics/utils/html-manipulation.js +8 -7
- package/schematics/utils/html-manipulation.mjs +8 -7
- package/schematics/utils/parse5-element.js +9 -10
- package/schematics/utils/parse5-element.mjs +9 -10
- package/schematics/utils/project-index-file.js +2 -2
- package/schematics/utils/project-index-file.mjs +2 -2
- package/schematics/utils/project-main-file.js +2 -2
- package/schematics/utils/project-main-file.mjs +2 -2
- package/schematics/utils/project-style-file.js +7 -9
- package/schematics/utils/project-style-file.mjs +7 -9
- package/schematics/utils/project-targets.js +1 -1
- package/schematics/utils/project-targets.mjs +1 -1
- package/schematics/utils/project-tsconfig-paths.js +4 -4
- package/schematics/utils/project-tsconfig-paths.mjs +4 -4
- package/schematics/utils/schematic-options.js +7 -5
- package/schematics/utils/schematic-options.mjs +7 -5
- package/schematics/utils/vendored-ast-utils/index.js +17 -18
- package/schematics/utils/vendored-ast-utils/index.mjs +17 -18
- package/scrolling/fixed-size-virtual-scroll.d.ts +3 -0
- package/scrolling/package.json +5 -5
- package/scrolling/scroll-dispatcher.d.ts +3 -7
- package/scrolling/scrollable.d.ts +3 -0
- package/scrolling/scrolling-module.d.ts +13 -7
- package/scrolling/viewport-ruler.d.ts +11 -1
- package/scrolling/virtual-for-of.d.ts +3 -0
- package/scrolling/virtual-scroll-viewport.d.ts +3 -0
- package/stepper/package.json +5 -5
- package/stepper/step-header.d.ts +3 -0
- package/stepper/step-label.d.ts +3 -0
- package/stepper/stepper-button.d.ts +5 -7
- package/stepper/stepper-module.d.ts +9 -7
- package/stepper/stepper.d.ts +5 -7
- package/table/cell.d.ts +15 -0
- package/table/coalesced-style-scheduler.d.ts +3 -0
- package/table/package.json +5 -5
- package/table/row.d.ts +19 -0
- package/table/table-module.d.ts +9 -7
- package/table/table.d.ts +13 -0
- package/table/text-column.d.ts +3 -0
- package/testing/package.json +5 -5
- package/testing/protractor/package.json +5 -5
- package/testing/selenium-webdriver/package.json +5 -5
- package/testing/testbed/package.json +5 -5
- package/testing/testbed/proxy-zone-types.d.ts +1 -1
- package/testing/testbed/zone-types.d.ts +1 -1
- package/text-field/autofill.d.ts +5 -0
- package/text-field/autosize.d.ts +3 -0
- package/text-field/package.json +5 -5
- package/text-field/text-field-module.d.ts +7 -7
- package/tree/control/base-tree-control.d.ts +1 -1
- package/tree/control/nested-tree-control.d.ts +2 -2
- package/tree/nested-node.d.ts +3 -0
- package/tree/node.d.ts +3 -0
- package/tree/outlet.d.ts +3 -0
- package/tree/package.json +5 -5
- package/tree/padding.d.ts +3 -0
- package/tree/toggle.d.ts +3 -0
- package/tree/tree-module.d.ts +10 -7
- package/tree/tree.d.ts +5 -0
- package/a11y/index.metadata.json +0 -1
- package/accordion/index.metadata.json +0 -1
- package/bidi/index.metadata.json +0 -1
- package/bundles/cdk-a11y.umd.js +0 -2752
- package/bundles/cdk-a11y.umd.js.map +0 -1
- package/bundles/cdk-accordion.umd.js +0 -262
- package/bundles/cdk-accordion.umd.js.map +0 -1
- package/bundles/cdk-bidi.umd.js +0 -206
- package/bundles/cdk-bidi.umd.js.map +0 -1
- package/bundles/cdk-clipboard.umd.js +0 -278
- package/bundles/cdk-clipboard.umd.js.map +0 -1
- package/bundles/cdk-coercion.umd.js +0 -477
- package/bundles/cdk-coercion.umd.js.map +0 -1
- package/bundles/cdk-collections.umd.js +0 -846
- package/bundles/cdk-collections.umd.js.map +0 -1
- package/bundles/cdk-drag-drop.umd.js +0 -3915
- package/bundles/cdk-drag-drop.umd.js.map +0 -1
- package/bundles/cdk-keycodes.umd.js +0 -292
- package/bundles/cdk-keycodes.umd.js.map +0 -1
- package/bundles/cdk-layout.umd.js +0 -284
- package/bundles/cdk-layout.umd.js.map +0 -1
- package/bundles/cdk-observers.umd.js +0 -242
- package/bundles/cdk-observers.umd.js.map +0 -1
- package/bundles/cdk-overlay.umd.js +0 -3417
- package/bundles/cdk-overlay.umd.js.map +0 -1
- package/bundles/cdk-platform.umd.js +0 -397
- package/bundles/cdk-platform.umd.js.map +0 -1
- package/bundles/cdk-portal.umd.js +0 -1008
- package/bundles/cdk-portal.umd.js.map +0 -1
- package/bundles/cdk-scrolling.umd.js +0 -1787
- package/bundles/cdk-scrolling.umd.js.map +0 -1
- package/bundles/cdk-stepper.umd.js +0 -648
- package/bundles/cdk-stepper.umd.js.map +0 -1
- package/bundles/cdk-table.umd.js +0 -2730
- package/bundles/cdk-table.umd.js.map +0 -1
- package/bundles/cdk-testing-protractor.umd.js +0 -833
- package/bundles/cdk-testing-protractor.umd.js.map +0 -1
- package/bundles/cdk-testing-selenium-webdriver.umd.js +0 -1002
- package/bundles/cdk-testing-selenium-webdriver.umd.js.map +0 -1
- package/bundles/cdk-testing-testbed.umd.js +0 -1396
- package/bundles/cdk-testing-testbed.umd.js.map +0 -1
- package/bundles/cdk-testing.umd.js +0 -1285
- package/bundles/cdk-testing.umd.js.map +0 -1
- package/bundles/cdk-text-field.umd.js +0 -494
- package/bundles/cdk-text-field.umd.js.map +0 -1
- package/bundles/cdk-tree.umd.js +0 -1308
- package/bundles/cdk-tree.umd.js.map +0 -1
- package/bundles/cdk.umd.js +0 -38
- package/bundles/cdk.umd.js.map +0 -1
- package/clipboard/index.metadata.json +0 -1
- package/collections/index.metadata.json +0 -1
- package/drag-drop/index.metadata.json +0 -1
- package/esm2015/a11y/a11y-module.js +0 -30
- package/esm2015/a11y/a11y.externs.js +0 -6
- package/esm2015/a11y/aria-describer/aria-describer.js +0 -213
- package/esm2015/a11y/fake-event-detection.js +0 -28
- package/esm2015/a11y/focus-monitor/focus-monitor.js +0 -394
- package/esm2015/a11y/focus-trap/configurable-focus-trap-factory.js +0 -52
- package/esm2015/a11y/focus-trap/configurable-focus-trap.js +0 -49
- package/esm2015/a11y/focus-trap/event-listener-inert-strategy.js +0 -62
- package/esm2015/a11y/focus-trap/focus-trap-inert-strategy.js +0 -11
- package/esm2015/a11y/focus-trap/focus-trap-manager.js +0 -51
- package/esm2015/a11y/focus-trap/focus-trap.js +0 -391
- package/esm2015/a11y/high-contrast-mode/high-contrast-mode-detector.js +0 -92
- package/esm2015/a11y/index.js +0 -6
- package/esm2015/a11y/input-modality/input-modality-detector.js +0 -171
- package/esm2015/a11y/interactivity-checker/interactivity-checker.js +0 -237
- package/esm2015/a11y/key-manager/list-key-manager.js +0 -317
- package/esm2015/a11y/live-announcer/live-announcer-tokens.js +0 -19
- package/esm2015/a11y/live-announcer/live-announcer.js +0 -167
- package/esm2015/accordion/accordion-item.js +0 -146
- package/esm2015/accordion/accordion-module.js +0 -19
- package/esm2015/accordion/accordion.externs.js +0 -6
- package/esm2015/accordion/accordion.js +0 -63
- package/esm2015/accordion/index.js +0 -6
- package/esm2015/bidi/bidi-module.js +0 -18
- package/esm2015/bidi/bidi.externs.js +0 -6
- package/esm2015/bidi/dir.js +0 -58
- package/esm2015/bidi/directionality.js +0 -44
- package/esm2015/bidi/index.js +0 -6
- package/esm2015/cdk.externs.js +0 -0
- package/esm2015/clipboard/clipboard-module.js +0 -18
- package/esm2015/clipboard/clipboard.externs.js +0 -6
- package/esm2015/clipboard/clipboard.js +0 -52
- package/esm2015/clipboard/copy-to-clipboard.js +0 -90
- package/esm2015/clipboard/pending-copy.js +0 -68
- package/esm2015/coercion/coercion.externs.js +0 -0
- package/esm2015/collections/collection-viewer.js +0 -9
- package/esm2015/collections/collections.externs.js +0 -6
- package/esm2015/collections/dispose-view-repeater-strategy.js +0 -48
- package/esm2015/collections/recycle-view-repeater-strategy.js +0 -125
- package/esm2015/collections/tree-adapter.js +0 -9
- package/esm2015/collections/unique-selection-dispatcher.js +0 -53
- package/esm2015/collections/view-repeater.js +0 -14
- package/esm2015/drag-drop/client-rect.js +0 -60
- package/esm2015/drag-drop/clone-node.js +0 -65
- package/esm2015/drag-drop/directives/assertions.js +0 -19
- package/esm2015/drag-drop/directives/drag-handle.js +0 -57
- package/esm2015/drag-drop/directives/drag-placeholder.js +0 -36
- package/esm2015/drag-drop/directives/drag-preview.js +0 -42
- package/esm2015/drag-drop/directives/drag.js +0 -407
- package/esm2015/drag-drop/directives/drop-list-group.js +0 -47
- package/esm2015/drag-drop/directives/drop-list.js +0 -301
- package/esm2015/drag-drop/drag-drop-module.js +0 -43
- package/esm2015/drag-drop/drag-drop-registry.js +0 -231
- package/esm2015/drag-drop/drag-drop.externs.js +0 -6
- package/esm2015/drag-drop/drag-drop.js +0 -59
- package/esm2015/drag-drop/drag-events.js +0 -9
- package/esm2015/drag-drop/drag-ref.js +0 -1110
- package/esm2015/drag-drop/drag-styling.js +0 -69
- package/esm2015/drag-drop/drag-utils.js +0 -60
- package/esm2015/drag-drop/drop-list-ref.js +0 -813
- package/esm2015/drag-drop/transition-duration.js +0 -36
- package/esm2015/keycodes/keycodes.externs.js +0 -6
- package/esm2015/layout/breakpoints-observer.js +0 -106
- package/esm2015/layout/layout-module.js +0 -14
- package/esm2015/layout/layout.externs.js +0 -6
- package/esm2015/layout/media-matcher.js +0 -85
- package/esm2015/observers/observe-content.js +0 -179
- package/esm2015/observers/observers.externs.js +0 -6
- package/esm2015/overlay/dispatchers/base-overlay-dispatcher.js +0 -51
- package/esm2015/overlay/dispatchers/overlay-keyboard-dispatcher.js +0 -62
- package/esm2015/overlay/dispatchers/overlay-outside-click-dispatcher.js +0 -97
- package/esm2015/overlay/fullscreen-overlay-container.js +0 -94
- package/esm2015/overlay/index.js +0 -7
- package/esm2015/overlay/overlay-config.js +0 -45
- package/esm2015/overlay/overlay-container.js +0 -85
- package/esm2015/overlay/overlay-directives.js +0 -352
- package/esm2015/overlay/overlay-module.js +0 -27
- package/esm2015/overlay/overlay-ref.js +0 -409
- package/esm2015/overlay/overlay.externs.js +0 -6
- package/esm2015/overlay/overlay.js +0 -119
- package/esm2015/overlay/position/connected-position.js +0 -94
- package/esm2015/overlay/position/flexible-connected-position-strategy.js +0 -960
- package/esm2015/overlay/position/global-position-strategy.js +0 -197
- package/esm2015/overlay/position/overlay-position-builder.js +0 -52
- package/esm2015/overlay/position/scroll-clip.js +0 -42
- package/esm2015/overlay/scroll/close-scroll-strategy.js +0 -61
- package/esm2015/overlay/scroll/scroll-strategy-options.js +0 -57
- package/esm2015/platform/features/passive-listeners.js +0 -36
- package/esm2015/platform/features/scrolling.js +0 -85
- package/esm2015/platform/features/test-environment.js +0 -16
- package/esm2015/platform/platform-module.js +0 -14
- package/esm2015/platform/platform.externs.js +0 -6
- package/esm2015/platform/platform.js +0 -77
- package/esm2015/portal/dom-portal-outlet.js +0 -136
- package/esm2015/portal/portal-directives.js +0 -221
- package/esm2015/portal/portal-injector.js +0 -28
- package/esm2015/portal/portal.externs.js +0 -6
- package/esm2015/portal/portal.js +0 -179
- package/esm2015/scrolling/fixed-size-virtual-scroll.js +0 -188
- package/esm2015/scrolling/scroll-dispatcher.js +0 -163
- package/esm2015/scrolling/scrollable.js +0 -173
- package/esm2015/scrolling/scrolling-module.js +0 -49
- package/esm2015/scrolling/scrolling.externs.js +0 -6
- package/esm2015/scrolling/viewport-ruler.js +0 -139
- package/esm2015/scrolling/virtual-for-of.js +0 -293
- package/esm2015/scrolling/virtual-scroll-strategy.js +0 -11
- package/esm2015/scrolling/virtual-scroll-viewport.js +0 -371
- package/esm2015/stepper/step-header.js +0 -29
- package/esm2015/stepper/step-label.js +0 -22
- package/esm2015/stepper/stepper-button.js +0 -72
- package/esm2015/stepper/stepper-module.js +0 -37
- package/esm2015/stepper/stepper.externs.js +0 -6
- package/esm2015/stepper/stepper.js +0 -428
- package/esm2015/table/can-stick.js +0 -42
- package/esm2015/table/cell.js +0 -211
- package/esm2015/table/coalesced-style-scheduler.js +0 -89
- package/esm2015/table/row.js +0 -244
- package/esm2015/table/sticky-position-listener.js +0 -11
- package/esm2015/table/sticky-styler.js +0 -336
- package/esm2015/table/table-module.js +0 -47
- package/esm2015/table/table.externs.js +0 -6
- package/esm2015/table/table.js +0 -987
- package/esm2015/table/text-column.js +0 -127
- package/esm2015/testing/change-detection.js +0 -110
- package/esm2015/testing/component-harness.js +0 -344
- package/esm2015/testing/harness-environment.js +0 -219
- package/esm2015/testing/protractor/protractor-element.js +0 -274
- package/esm2015/testing/protractor/protractor-harness-environment.js +0 -79
- package/esm2015/testing/protractor/protractor.externs.js +0 -0
- package/esm2015/testing/selenium-webdriver/selenium-web-driver-element.js +0 -241
- package/esm2015/testing/selenium-webdriver/selenium-web-driver-harness-environment.js +0 -97
- package/esm2015/testing/selenium-webdriver/selenium-webdriver.externs.js +0 -0
- package/esm2015/testing/test-element.js +0 -48
- package/esm2015/testing/testbed/fake-events/dispatch-events.js +0 -53
- package/esm2015/testing/testbed/fake-events/element-focus.js +0 -39
- package/esm2015/testing/testbed/fake-events/event-objects.js +0 -107
- package/esm2015/testing/testbed/fake-events/type-in-element.js +0 -79
- package/esm2015/testing/testbed/task-state-zone-interceptor.js +0 -82
- package/esm2015/testing/testbed/testbed-harness-environment.js +0 -173
- package/esm2015/testing/testbed/testbed.externs.js +0 -0
- package/esm2015/testing/testbed/unit-test-element.js +0 -266
- package/esm2015/testing/testing.externs.js +0 -0
- package/esm2015/testing/text-filtering.js +0 -23
- package/esm2015/text-field/autofill.js +0 -117
- package/esm2015/text-field/autosize.js +0 -293
- package/esm2015/text-field/text-field-module.js +0 -21
- package/esm2015/text-field/text-field.externs.js +0 -6
- package/esm2015/tree/control/nested-tree-control.js +0 -59
- package/esm2015/tree/nested-node.js +0 -112
- package/esm2015/tree/node.js +0 -36
- package/esm2015/tree/outlet.js +0 -34
- package/esm2015/tree/padding.js +0 -119
- package/esm2015/tree/toggle.js +0 -46
- package/esm2015/tree/tree-module.js +0 -32
- package/esm2015/tree/tree.externs.js +0 -6
- package/esm2015/tree/tree.js +0 -345
- package/fesm2015/a11y.js.map +0 -1
- package/fesm2015/accordion.js.map +0 -1
- package/fesm2015/bidi.js.map +0 -1
- package/fesm2015/cdk.js.map +0 -1
- package/fesm2015/clipboard.js.map +0 -1
- package/fesm2015/coercion.js.map +0 -1
- package/fesm2015/collections.js.map +0 -1
- package/fesm2015/drag-drop.js.map +0 -1
- package/fesm2015/keycodes.js.map +0 -1
- package/fesm2015/layout.js.map +0 -1
- package/fesm2015/observers.js.map +0 -1
- package/fesm2015/overlay.js.map +0 -1
- package/fesm2015/platform.js.map +0 -1
- package/fesm2015/portal.js.map +0 -1
- package/fesm2015/scrolling.js.map +0 -1
- package/fesm2015/stepper.js.map +0 -1
- package/fesm2015/table.js.map +0 -1
- package/fesm2015/testing/protractor.js.map +0 -1
- package/fesm2015/testing/selenium-webdriver.js.map +0 -1
- package/fesm2015/testing/testbed.js.map +0 -1
- package/fesm2015/testing.js.map +0 -1
- package/fesm2015/text-field.js.map +0 -1
- package/fesm2015/tree.js.map +0 -1
- package/keycodes/index.metadata.json +0 -1
- package/layout/index.metadata.json +0 -1
- package/observers/index.metadata.json +0 -1
- package/overlay/index.metadata.json +0 -1
- package/platform/index.metadata.json +0 -1
- package/portal/index.metadata.json +0 -1
- package/scrolling/index.metadata.json +0 -1
- package/stepper/index.metadata.json +0 -1
- package/table/index.metadata.json +0 -1
- package/text-field/index.metadata.json +0 -1
- package/tree/index.metadata.json +0 -1
|
@@ -21,10 +21,7 @@ const signatureErrorDiagnostics = [
|
|
|
21
21
|
// Type not assignable error diagnostic.
|
|
22
22
|
2345,
|
|
23
23
|
// Constructor argument length invalid diagnostics
|
|
24
|
-
2554,
|
|
25
|
-
2555,
|
|
26
|
-
2556,
|
|
27
|
-
2557,
|
|
24
|
+
2554, 2555, 2556, 2557,
|
|
28
25
|
];
|
|
29
26
|
/**
|
|
30
27
|
* Migration that visits every TypeScript new expression or super call and checks if
|
|
@@ -36,7 +33,7 @@ class ConstructorSignatureMigration extends migration_1.Migration {
|
|
|
36
33
|
// Note that the data for this rule is not distinguished based on the target version because
|
|
37
34
|
// we don't keep track of the new signature and don't want to update incrementally.
|
|
38
35
|
// See: https://github.com/angular/components/pull/12970#issuecomment-418337566
|
|
39
|
-
this.data = version_changes_1.getAllChanges(this.upgradeData.constructorChecks);
|
|
36
|
+
this.data = (0, version_changes_1.getAllChanges)(this.upgradeData.constructorChecks);
|
|
40
37
|
// Only enable the migration rule if there is upgrade data.
|
|
41
38
|
this.enabled = this.data.length !== 0;
|
|
42
39
|
}
|
|
@@ -56,7 +53,8 @@ class ConstructorSignatureMigration extends migration_1.Migration {
|
|
|
56
53
|
*/
|
|
57
54
|
_visitSourceFile(sourceFile) {
|
|
58
55
|
// List of classes of which the constructor signature has changed.
|
|
59
|
-
const diagnostics = ts
|
|
56
|
+
const diagnostics = ts
|
|
57
|
+
.getPreEmitDiagnostics(this.program, sourceFile)
|
|
60
58
|
.filter(diagnostic => signatureErrorDiagnostics.includes(diagnostic.code))
|
|
61
59
|
.filter(diagnostic => diagnostic.start !== undefined);
|
|
62
60
|
for (const diagnostic of diagnostics) {
|
|
@@ -71,9 +69,10 @@ class ConstructorSignatureMigration extends migration_1.Migration {
|
|
|
71
69
|
// the diagnostic refers to a constructor of the actual expression. In case the constructor
|
|
72
70
|
// is inherited, we need to detect that the owner-class of the constructor is added to the
|
|
73
71
|
// constructor checks upgrade data. e.g. `class CustomCalendar extends MatCalendar {}`.
|
|
74
|
-
const signatureClassNames = classType
|
|
72
|
+
const signatureClassNames = classType
|
|
73
|
+
.getConstructSignatures()
|
|
75
74
|
.map(signature => getClassDeclarationOfSignature(signature))
|
|
76
|
-
.map(declaration => declaration && declaration.name ? declaration.name.text : null)
|
|
75
|
+
.map(declaration => (declaration && declaration.name ? declaration.name.text : null))
|
|
77
76
|
.filter(Boolean);
|
|
78
77
|
// Besides checking the signature class names, we need to check the actual class name because
|
|
79
78
|
// there can be classes without an explicit constructor.
|
|
@@ -81,10 +80,12 @@ class ConstructorSignatureMigration extends migration_1.Migration {
|
|
|
81
80
|
!signatureClassNames.some(name => this.data.includes(name))) {
|
|
82
81
|
continue;
|
|
83
82
|
}
|
|
84
|
-
const classSignatures = classType
|
|
83
|
+
const classSignatures = classType
|
|
84
|
+
.getConstructSignatures()
|
|
85
|
+
.map(signature => getParameterTypesFromSignature(signature, this.typeChecker));
|
|
85
86
|
const expressionName = isNewExpression ? `new ${className}` : 'super';
|
|
86
87
|
const signatures = classSignatures
|
|
87
|
-
.map(signature => signature.map(t => t === null ? 'any' : this.typeChecker.typeToString(t)))
|
|
88
|
+
.map(signature => signature.map(t => (t === null ? 'any' : this.typeChecker.typeToString(t))))
|
|
88
89
|
.map(signature => `${expressionName}(${signature.join(', ')})`)
|
|
89
90
|
.join(' or ');
|
|
90
91
|
this.createFailureAtNode(node, `Found "${className}" constructed with ` +
|
|
@@ -96,7 +97,9 @@ class ConstructorSignatureMigration extends migration_1.Migration {
|
|
|
96
97
|
exports.ConstructorSignatureMigration = ConstructorSignatureMigration;
|
|
97
98
|
/** Resolves the type for each parameter in the specified signature. */
|
|
98
99
|
function getParameterTypesFromSignature(signature, typeChecker) {
|
|
99
|
-
return signature
|
|
100
|
+
return signature
|
|
101
|
+
.getParameters()
|
|
102
|
+
.map(param => param.declarations ? typeChecker.getTypeAtLocation(param.declarations[0]) : null);
|
|
100
103
|
}
|
|
101
104
|
/**
|
|
102
105
|
* Walks through each node of a source file in order to find a new-expression node or super-call
|
|
@@ -126,11 +129,11 @@ function getClassDeclarationOfSignature(signature) {
|
|
|
126
129
|
if (!node) {
|
|
127
130
|
return null;
|
|
128
131
|
}
|
|
129
|
-
while (!ts.isSourceFile(node = node.parent)) {
|
|
132
|
+
while (!ts.isSourceFile((node = node.parent))) {
|
|
130
133
|
if (ts.isClassDeclaration(node)) {
|
|
131
134
|
return node;
|
|
132
135
|
}
|
|
133
136
|
}
|
|
134
137
|
return null;
|
|
135
138
|
}
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0b3Itc2lnbmF0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL25nLXVwZGF0ZS9taWdyYXRpb25zL2NvbnN0cnVjdG9yLXNpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCxpQ0FBaUM7QUFDakMsMkRBQXNEO0FBQ3RELHVFQUFnRTtBQUdoRTs7Ozs7R0FLRztBQUNILE1BQU0seUJBQXlCLEdBQUc7SUFDaEMsd0NBQXdDO0lBQ3hDLElBQUk7SUFDSixrREFBa0Q7SUFDbEQsSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtDQUNMLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFhLDZCQUE4QixTQUFRLHFCQUFzQjtJQUF6RTs7UUFDRSw0RkFBNEY7UUFDNUYsbUZBQW1GO1FBQ25GLCtFQUErRTtRQUMvRSxTQUFJLEdBQUcsK0JBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFekQsMkRBQTJEO1FBQzNELFlBQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFxRW5DLENBQUM7SUFuRVUsU0FBUyxDQUFDLElBQWE7UUFDOUIsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNLLGdCQUFnQixDQUFDLFVBQXlCO1FBQ2hELGtFQUFrRTtRQUNsRSxNQUFNLFdBQVcsR0FDYixFQUFFLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUM7YUFDN0MsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMseUJBQXlCLENBQUMs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QUksRUFBRTtRQUNULE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFDRCxPQUFPLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQzNDLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFO1lBQy9CLE9BQU8sSUFBSSxDQUFDO1NBQ2I7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtnZXRBbGxDaGFuZ2VzfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC92ZXJzaW9uLWNoYW5nZXMnO1xuaW1wb3J0IHtVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBMaXN0IG9mIGRpYWdub3N0aWMgY29kZXMgdGhhdCByZWZlciB0byBwcmUtZW1pdCBkaWFnbm9zdGljcyB3aGljaCBpbmRpY2F0ZSBpbnZhbGlkXG4gKiBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIHNpZ25hdHVyZXMuIFNlZSB0aGUgbGlzdCBvZiBkaWFnbm9zdGljcyBoZXJlOlxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWNyb3NvZnQvVHlwZVNjcmlwdC9ibG9iL21hc3Rlci9zcmMvY29tcGlsZXIvZGlhZ25vc3RpY01lc3NhZ2VzLmpzb25cbiAqL1xuY29uc3Qgc2lnbmF0dXJlRXJyb3JEaWFnbm9zdGljcyA9IFtcbiAgLy8gVHlwZSBub3QgYXNzaWduYWJsZSBlcnJvciBkaWFnbm9zdGljLlxuICAyMzQ1LFxuICAvLyBDb25zdHJ1Y3RvciBhcmd1bWVudCBsZW5ndGggaW52YWxpZCBkaWFnbm9zdGljc1xuICAyNTU0LFxuICAyNTU1LFxuICAyNTU2LFxuICAyNTU3LFxuXTtcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB2aXNpdHMgZXZlcnkgVHlwZVNjcmlwdCBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIGFuZCBjaGVja3MgaWZcbiAqIHRoZSBwYXJhbWV0ZXIgdHlwZSBzaWduYXR1cmUgaXMgaW52YWxpZCBhbmQgbmVlZHMgdG8gYmUgdXBkYXRlZCBtYW51YWxseS5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbnN0cnVjdG9yU2lnbmF0dXJlTWlncmF0aW9uIGV4dGVuZHMgTWlncmF0aW9uPFVwZ3JhZGVEYXRhPiB7XG4gIC8vIE5vdGUgdGhhdCB0aGUgZGF0YSBmb3IgdGhpcyBydWxlIGlzIG5vdCBkaXN0aW5ndWlzaGVkIGJhc2VkIG9uIHRoZSB0YXJnZXQgdmVyc2lvbiBiZWNhdXNlXG4gIC8vIHdlIGRvbid0IGtlZXAgdHJhY2sgb2YgdGhlIG5ldyBzaWduYXR1cmUgYW5kIGRvbid0IHdhbnQgdG8gdXBkYXRlIGluY3JlbWVudGFsbHkuXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9wdWxsLzEyOTcwI2lzc3VlY29tbWVudC00MTgzMzc1NjZcbiAgZGF0YSA9IGdldEFsbENoYW5nZXModGhpcy51cGdyYWRlRGF0YS5jb25zdHJ1Y3RvckNoZWNrcyk7XG5cbiAgLy8gT25seSBlbmFibGUgdGhlIG1pZ3JhdGlvbiBydWxlIGlmIHRoZXJlIGlzIHVwZ3JhZGUgZGF0YS5cbiAgZW5hYmxlZCA9IHRoaXMuZGF0YS5sZW5ndGggIT09IDA7XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNTb3VyY2VGaWxlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFNvdXJjZUZpbGUobm9kZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0aGF0IHdpbGwgYmUgY2FsbGVkIGZvciBlYWNoIHNvdXJjZSBmaWxlIG9mIHRoZSB1cGdyYWRlIHByb2plY3QuIEluIG9yZGVyIHRvXG4gICAqIHByb3Blcmx5IGRldGVybWluZSBpbnZhbGlkIGNvbnN0cnVjdG9yIHNpZ25hdHVyZXMsIHdlIHRha2UgYWR2YW50YWdlIG9mIHRoZSBwcmUtZW1pdFxuICAgKiBkaWFnbm9zdGljcyBmcm9tIFR5cGVTY3JpcHQuXG4gICAqXG4gICAqIEJ5IHVzaW5nIHRoZSBkaWFnbm9zdGljcywgdGhlIG1pZ3JhdGlvbiBjYW4gaGFuZGxlIHR5cGUgYXNzaWduYWJpbGl0eS4gTm90IHVzaW5nXG4gICAqIGRpYWdub3N0aWNzIHdvdWxkIG1lYW4gdGhhdCB3ZSBuZWVkIHRvIHVzZSBzaW1wbGUgdHlwZSBlcXVhbGl0eSBjaGVja2luZyB3aGljaCBpc1xuICAgKiB0b28gc3RyaWN0LiBTZWUgcmVsYXRlZCBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL01pY3Jvc29mdC9UeXBlU2NyaXB0L2lzc3Vlcy85ODc5XG4gICAqL1xuICBwcml2YXRlIF92aXNpdFNvdXJjZUZpbGUoc291cmNlRmlsZTogdHMuU291cmNlRmlsZSkge1xuICAgIC8vIExpc3Qgb2YgY2xhc3NlcyBvZiB3aGljaCB0aGUgY29uc3RydWN0b3Igc2lnbmF0dXJlIGhhcyBjaGFuZ2VkLlxuICAgIGNvbnN0IGRpYWdub3N0aWNzID1cbiAgICAgICAgdHMuZ2V0UHJlRW1pdERpYWdub3N0aWNzKHRoaXMucHJvZ3JhbSwgc291cmNlRmlsZSlcbiAgICAgICAgICAgIC5maWx0ZXIoZGlhZ25vc3RpYyA9PiBzaWduYXR1cmVFcnJvckRpYWdub3N0aWNzLmluY2x1ZGVzKGRpYWdub3N0aWMuY29kZSkpXG4gICAgICAgICAgICAuZmlsdGVyKGRpYWdub3N0aWMgPT4gZGlhZ25vc3RpYy5zdGFydCAhPT0gdW5kZWZpbmVkKTtcblxuICAgIGZvciAoY29uc3QgZGlhZ25vc3RpYyBvZiBkaWFnbm9zdGljcykge1xuICAgICAgY29uc3Qgbm9kZSA9IGZpbmRDb25zdHJ1Y3Rvck5vZGUoZGlhZ25vc3RpYywgc291cmNlRmlsZSk7XG5cbiAgICAgIGlmICghbm9kZSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgY2xhc3NUeXBlID0gdGhpcy50eXBlQ2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihub2RlLmV4cHJlc3Npb24pO1xuICAgICAgY29uc3QgY2xhc3NOYW1lID0gY2xhc3NUeXBlLnN5bWJvbCAmJiBjbGFzc1R5cGUuc3ltYm9sLm5hbWU7XG4gICAgICBjb25zdCBpc05ld0V4cHJlc3Npb24gPSB0cy5pc05ld0V4cHJlc3Npb24obm9kZSk7XG5cbiAgICAgIC8vIERldGVybWluZSB0aGUgY2xhc3MgbmFtZXMgb2YgdGhlIGFjdHVhbCBjb25zdHJ1Y3Qgc2lnbmF0dXJlcyBiZWNhdXNlIHdlIGNhbm5vdCBhc3N1bWUgdGhhdFxuICAgICAgLy8gdGhlIGRpYWdub3N0aWMgcmVmZXJzIHRvIGEgY29uc3RydWN0b3Igb2YgdGhlIGFjdHVhbCBleHByZXNzaW9uLiBJbiBjYXNlIHRoZSBjb25zdHJ1Y3RvclxuICAgICAgLy8gaXMgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIGRldGVjdCB0aGF0IHRoZSBvd25lci1jbGFzcyBvZiB0aGUgY29uc3RydWN0b3IgaXMgYWRkZWQgdG8gdGhlXG4gICAgICAvLyBjb25zdHJ1Y3RvciBjaGVja3MgdXBncmFkZSBkYXRhLiBlLmcuIGBjbGFzcyBDdXN0b21DYWxlbmRhciBleHRlbmRzIE1hdENhbGVuZGFyIHt9YC5cbiAgICAgIGNvbnN0IHNpZ25hdHVyZUNsYXNzTmFtZXMgPVxuICAgICAgICAgIGNsYXNzVHlwZS5nZXRDb25zdHJ1Y3RTaWduYXR1cmVzKClcbiAgICAgICAgICAgICAgLm1hcChzaWduYXR1cmUgPT4gZ2V0Q2xhc3NEZWNsYXJhdGlvbk9mU2lnbmF0dXJlKHNpZ25hdHVyZSkpXG4gICAgICAgICAgICAgIC5tYXAoZGVjbGFyYXRpb24gPT4gZGVjbGFyYXRpb24gJiYgZGVjbGFyYXRpb24ubmFtZSA/IGRlY2xhcmF0aW9uLm5hbWUudGV4dCA6IG51bGwpXG4gICAgICAgICAgICAgIC5maWx0ZXIoQm9vbGVhbik7XG5cbiAgICAgIC8vIEJlc2lkZXMgY2hlY2tpbmcgdGhlIHNpZ25hdHVyZSBjbGFzcyBuYW1lcywgd2UgbmVlZCB0byBjaGVjayB0aGUgYWN0dWFsIGNsYXNzIG5hbWUgYmVjYXVzZVxuICAgICAgLy8gdGhlcmUgY2FuIGJlIGNsYXNzZXMgd2l0aG91dCBhbiBleHBsaWNpdCBjb25zdHJ1Y3Rvci5cbiAgICAgIGlmICghdGhpcy5kYXRhLmluY2x1ZGVzKGNsYXNzTmFtZSkgJiZcbiAgICAgICAgICAhc2lnbmF0dXJlQ2xhc3NOYW1lcy5zb21lKG5hbWUgPT4gdGhpcy5kYXRhLmluY2x1ZGVzKG5hbWUhKSkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNsYXNzU2lnbmF0dXJlcyA9IGNsYXNzVHlwZS5nZXRDb25zdHJ1Y3RTaWduYXR1cmVzKCkubWFwKFxuICAgICAgICAgIHNpZ25hdHVyZSA9PiBnZXRQYXJhbWV0ZXJUeXBlc0Zyb21TaWduYXR1cmUoc2lnbmF0dXJlLCB0aGlzLnR5cGVDaGVja2VyKSk7XG5cbiAgICAgIGNvbnN0IGV4cHJlc3Npb25OYW1lID0gaXNOZXdFeHByZXNzaW9uID8gYG5ldyAke2NsYXNzTmFtZX1gIDogJ3N1cGVyJztcbiAgICAgIGNvbnN0IHNpZ25hdHVyZXMgPSBjbGFzc1NpZ25hdHVyZXNcbiAgICAgICAgICAubWFwKHNpZ25hdHVyZSA9PlxuICAgICAgICAgICAgICBzaWduYXR1cmUubWFwKHQgPT4gdCA9PT0gbnVsbCA/ICdhbnknIDogdGhpcy50eXBlQ2hlY2tlci50eXBlVG9TdHJpbmcodCkpKVxuICAgICAgICAgIC5tYXAoc2lnbmF0dXJlID0+IGAke2V4cHJlc3Npb25OYW1lfSgke3NpZ25hdHVyZS5qb2luKCcsICcpfSlgKVxuICAgICAgICAgIC5qb2luKCcgb3IgJyk7XG5cbiAgICAgIHRoaXMuY3JlYXRlRmFpbHVyZUF0Tm9kZShcbiAgICAgICAgICBub2RlLFxuICAgICAgICAgIGBGb3VuZCBcIiR7Y2xhc3NOYW1lfVwiIGNvbnN0cnVjdGVkIHdpdGggYCArXG4gICAgICAgICAgICAgIGBhbiBpbnZhbGlkIHNpZ25hdHVyZS4gUGxlYXNlIG1hbnVhbGx5IHVwZGF0ZSB0aGUgJHtleHByZXNzaW9uTmFtZX0gZXhwcmVzc2lvbiB0byBgICtcbiAgICAgICAgICAgICAgYG1hdGNoIHRoZSBuZXcgc2lnbmF0dXJlJHtjbGFzc1NpZ25hdHVyZXMubGVuZ3RoID4gMSA/ICdzJyA6ICcnfTogJHtzaWduYXR1cmVzfWApO1xuICAgIH1cbiAgfVxufVxuXG5cbi8qKiBSZXNvbHZlcyB0aGUgdHlwZSBmb3IgZWFjaCBwYXJhbWV0ZXIgaW4gdGhlIHNwZWNpZmllZCBzaWduYXR1cmUuICovXG5mdW5jdGlvbiBnZXRQYXJhbWV0ZXJUeXBlc0Zyb21TaWduYXR1cmUoXG4gICAgc2lnbmF0dXJlOiB0cy5TaWduYXR1cmUsIHR5cGVDaGVja2VyOiB0cy5UeXBlQ2hlY2tlcik6ICh0cy5UeXBlfG51bGwpW10ge1xuICByZXR1cm4gc2lnbmF0dXJlLmdldFBhcmFtZXRlcnMoKS5tYXAoXG4gICAgICBwYXJhbSA9PiBwYXJhbS5kZWNsYXJhdGlvbnMgPyB0eXBlQ2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihwYXJhbS5kZWNsYXJhdGlvbnNbMF0pIDogbnVsbCk7XG59XG5cbi8qKlxuICogV2Fsa3MgdGhyb3VnaCBlYWNoIG5vZGUgb2YgYSBzb3VyY2UgZmlsZSBpbiBvcmRlciB0byBmaW5kIGEgbmV3LWV4cHJlc3Npb24gbm9kZSBvciBzdXBlci1jYWxsXG4gKiBleHByZXNzaW9uIG5vZGUgdGhhdCBpcyBjYXB0dXJlZCBieSB0aGUgc3BlY2lmaWVkIGRpYWdub3N0aWMuXG4gKi9cbmZ1bmN0aW9uIGZpbmRDb25zdHJ1Y3Rvck5vZGUoXG4gICAgZGlhZ25vc3RpYzogdHMuRGlhZ25vc3RpYywgc291cmNlRmlsZTogdHMuU291cmNlRmlsZSk6IHRzLkNhbGxFeHByZXNzaW9ufHRzLk5ld0V4cHJlc3Npb258bnVsbCB7XG4gIGxldCByZXNvbHZlZE5vZGU6IHRzLk5vZGV8bnVsbCA9IG51bGw7XG5cbiAgY29uc3QgX3Zpc2l0Tm9kZSA9IChub2RlOiB0cy5Ob2RlKSA9PiB7XG4gICAgLy8gQ2hlY2sgd2hldGhlciB0aGUgY3VycmVudCBub2RlIGNvbnRhaW5zIHRoZSBkaWFnbm9zdGljLiBJZiB0aGUgbm9kZSBjb250YWlucyB0aGUgZGlhZ25vc3RpYyxcbiAgICAvLyB3YWxrIGRlZXBlciBpbiBvcmRlciB0byBmaW5kIGFsbCBjb25zdHJ1Y3RvciBleHByZXNzaW9uIG5vZGVzLlxuICAgIGlmIChub2RlLmdldFN0YXJ0KCkgPD0gZGlhZ25vc3RpYy5zdGFydCEgJiYgbm9kZS5nZXRFbmQoKSA+PSBkaWFnbm9zdGljLnN0YXJ0ISkge1xuICAgICAgaWYgKHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKSB8fFxuICAgICAgICAgICh0cy5pc0NhbGxFeHByZXNzaW9uKG5vZGUpICYmIG5vZGUuZXhwcmVzc2lvbi5raW5kID09PSB0cy5TeW50YXhLaW5kLlN1cGVyS2V5d29yZCkpIHtcbiAgICAgICAgcmVzb2x2ZWROb2RlID0gbm9kZTtcbiAgICAgIH1cblxuICAgICAgdHMuZm9yRWFjaENoaWxkKG5vZGUsIF92aXNpdE5vZGUpO1xuICAgIH1cbiAgfTtcblxuICB0cy5mb3JFYWNoQ2hpbGQoc291cmNlRmlsZSwgX3Zpc2l0Tm9kZSk7XG5cbiAgcmV0dXJuIHJlc29sdmVkTm9kZTtcbn1cblxuLyoqIERldGVybWluZXMgdGhlIGNsYXNzIGRlY2xhcmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgY29uc3RydWN0IHNpZ25hdHVyZS4gKi9cbmZ1bmN0aW9uIGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSk6IHRzLkNsYXNzRGVjbGFyYXRpb258bnVsbCB7XG4gIGxldCBub2RlOiB0cy5Ob2RlID0gc2lnbmF0dXJlLmdldERlY2xhcmF0aW9uKCk7XG4gIC8vIEhhbmRsZSBzaWduYXR1cmVzIHdoaWNoIGRvbid0IGhhdmUgYW4gYWN0dWFsIGRlY2xhcmF0aW9uLiBUaGlzIGhhcHBlbnMgaWYgYSBjbGFzc1xuICAvLyBkb2VzIG5vdCBoYXZlIGFuIGV4cGxpY2l0bHkgd3JpdHRlbiBjb25zdHJ1Y3Rvci5cbiAgaWYgKCFub2RlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgd2hpbGUgKCF0cy5pc1NvdXJjZUZpbGUobm9kZSA9IG5vZGUucGFyZW50KSkge1xuICAgIGlmICh0cy5pc0NsYXNzRGVjbGFyYXRpb24obm9kZSkpIHtcbiAgICAgIHJldHVybiBub2RlO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cbiJdfQ==
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0b3Itc2lnbmF0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL25nLXVwZGF0ZS9taWdyYXRpb25zL2NvbnN0cnVjdG9yLXNpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCxpQ0FBaUM7QUFDakMsMkRBQXNEO0FBQ3RELHVFQUFnRTtBQUdoRTs7Ozs7R0FLRztBQUNILE1BQU0seUJBQXlCLEdBQUc7SUFDaEMsd0NBQXdDO0lBQ3hDLElBQUk7SUFDSixrREFBa0Q7SUFDbEQsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSTtDQUN2QixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBYSw2QkFBOEIsU0FBUSxxQkFBc0I7SUFBekU7O1FBQ0UsNEZBQTRGO1FBQzVGLG1GQUFtRjtRQUNuRiwrRUFBK0U7UUFDL0UsU0FBSSxHQUFHLElBQUEsK0JBQWEsRUFBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFekQsMkRBQTJEO1FBQzNELFlBQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUEwRW5DLENBQUM7SUF4RVUsU0FBUyxDQUFDLElBQWE7UUFDOUIsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNLLGdCQUFnQixDQUFDLFVBQXlCO1FBQ2hELGtFQUFrRTtRQUNsRSxNQUFNLFdBQVcsR0FBRyxFQUFFO2FBQ25CLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDO2FBQy9DLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLHlCQUF5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O0lBQ3BGLG1EQUFtRDtJQUNuRCxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ1QsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFO1FBQzdDLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFO1lBQy9CLE9BQU8sSUFBSSxDQUFDO1NBQ2I7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtnZXRBbGxDaGFuZ2VzfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC92ZXJzaW9uLWNoYW5nZXMnO1xuaW1wb3J0IHtVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBMaXN0IG9mIGRpYWdub3N0aWMgY29kZXMgdGhhdCByZWZlciB0byBwcmUtZW1pdCBkaWFnbm9zdGljcyB3aGljaCBpbmRpY2F0ZSBpbnZhbGlkXG4gKiBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIHNpZ25hdHVyZXMuIFNlZSB0aGUgbGlzdCBvZiBkaWFnbm9zdGljcyBoZXJlOlxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWNyb3NvZnQvVHlwZVNjcmlwdC9ibG9iL21hc3Rlci9zcmMvY29tcGlsZXIvZGlhZ25vc3RpY01lc3NhZ2VzLmpzb25cbiAqL1xuY29uc3Qgc2lnbmF0dXJlRXJyb3JEaWFnbm9zdGljcyA9IFtcbiAgLy8gVHlwZSBub3QgYXNzaWduYWJsZSBlcnJvciBkaWFnbm9zdGljLlxuICAyMzQ1LFxuICAvLyBDb25zdHJ1Y3RvciBhcmd1bWVudCBsZW5ndGggaW52YWxpZCBkaWFnbm9zdGljc1xuICAyNTU0LCAyNTU1LCAyNTU2LCAyNTU3LFxuXTtcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB2aXNpdHMgZXZlcnkgVHlwZVNjcmlwdCBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIGFuZCBjaGVja3MgaWZcbiAqIHRoZSBwYXJhbWV0ZXIgdHlwZSBzaWduYXR1cmUgaXMgaW52YWxpZCBhbmQgbmVlZHMgdG8gYmUgdXBkYXRlZCBtYW51YWxseS5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbnN0cnVjdG9yU2lnbmF0dXJlTWlncmF0aW9uIGV4dGVuZHMgTWlncmF0aW9uPFVwZ3JhZGVEYXRhPiB7XG4gIC8vIE5vdGUgdGhhdCB0aGUgZGF0YSBmb3IgdGhpcyBydWxlIGlzIG5vdCBkaXN0aW5ndWlzaGVkIGJhc2VkIG9uIHRoZSB0YXJnZXQgdmVyc2lvbiBiZWNhdXNlXG4gIC8vIHdlIGRvbid0IGtlZXAgdHJhY2sgb2YgdGhlIG5ldyBzaWduYXR1cmUgYW5kIGRvbid0IHdhbnQgdG8gdXBkYXRlIGluY3JlbWVudGFsbHkuXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9wdWxsLzEyOTcwI2lzc3VlY29tbWVudC00MTgzMzc1NjZcbiAgZGF0YSA9IGdldEFsbENoYW5nZXModGhpcy51cGdyYWRlRGF0YS5jb25zdHJ1Y3RvckNoZWNrcyk7XG5cbiAgLy8gT25seSBlbmFibGUgdGhlIG1pZ3JhdGlvbiBydWxlIGlmIHRoZXJlIGlzIHVwZ3JhZGUgZGF0YS5cbiAgZW5hYmxlZCA9IHRoaXMuZGF0YS5sZW5ndGggIT09IDA7XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNTb3VyY2VGaWxlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFNvdXJjZUZpbGUobm9kZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0aGF0IHdpbGwgYmUgY2FsbGVkIGZvciBlYWNoIHNvdXJjZSBmaWxlIG9mIHRoZSB1cGdyYWRlIHByb2plY3QuIEluIG9yZGVyIHRvXG4gICAqIHByb3Blcmx5IGRldGVybWluZSBpbnZhbGlkIGNvbnN0cnVjdG9yIHNpZ25hdHVyZXMsIHdlIHRha2UgYWR2YW50YWdlIG9mIHRoZSBwcmUtZW1pdFxuICAgKiBkaWFnbm9zdGljcyBmcm9tIFR5cGVTY3JpcHQuXG4gICAqXG4gICAqIEJ5IHVzaW5nIHRoZSBkaWFnbm9zdGljcywgdGhlIG1pZ3JhdGlvbiBjYW4gaGFuZGxlIHR5cGUgYXNzaWduYWJpbGl0eS4gTm90IHVzaW5nXG4gICAqIGRpYWdub3N0aWNzIHdvdWxkIG1lYW4gdGhhdCB3ZSBuZWVkIHRvIHVzZSBzaW1wbGUgdHlwZSBlcXVhbGl0eSBjaGVja2luZyB3aGljaCBpc1xuICAgKiB0b28gc3RyaWN0LiBTZWUgcmVsYXRlZCBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL01pY3Jvc29mdC9UeXBlU2NyaXB0L2lzc3Vlcy85ODc5XG4gICAqL1xuICBwcml2YXRlIF92aXNpdFNvdXJjZUZpbGUoc291cmNlRmlsZTogdHMuU291cmNlRmlsZSkge1xuICAgIC8vIExpc3Qgb2YgY2xhc3NlcyBvZiB3aGljaCB0aGUgY29uc3RydWN0b3Igc2lnbmF0dXJlIGhhcyBjaGFuZ2VkLlxuICAgIGNvbnN0IGRpYWdub3N0aWNzID0gdHNcbiAgICAgIC5nZXRQcmVFbWl0RGlhZ25vc3RpY3ModGhpcy5wcm9ncmFtLCBzb3VyY2VGaWxlKVxuICAgICAgLmZpbHRlcihkaWFnbm9zdGljID0+IHNpZ25hdHVyZUVycm9yRGlhZ25vc3RpY3MuaW5jbHVkZXMoZGlhZ25vc3RpYy5jb2RlKSlcbiAgICAgIC5maWx0ZXIoZGlhZ25vc3RpYyA9PiBkaWFnbm9zdGljLnN0YXJ0ICE9PSB1bmRlZmluZWQpO1xuXG4gICAgZm9yIChjb25zdCBkaWFnbm9zdGljIG9mIGRpYWdub3N0aWNzKSB7XG4gICAgICBjb25zdCBub2RlID0gZmluZENvbnN0cnVjdG9yTm9kZShkaWFnbm9zdGljLCBzb3VyY2VGaWxlKTtcblxuICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGFzc1R5cGUgPSB0aGlzLnR5cGVDaGVja2VyLmdldFR5cGVBdExvY2F0aW9uKG5vZGUuZXhwcmVzc2lvbik7XG4gICAgICBjb25zdCBjbGFzc05hbWUgPSBjbGFzc1R5cGUuc3ltYm9sICYmIGNsYXNzVHlwZS5zeW1ib2wubmFtZTtcbiAgICAgIGNvbnN0IGlzTmV3RXhwcmVzc2lvbiA9IHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKTtcblxuICAgICAgLy8gRGV0ZXJtaW5lIHRoZSBjbGFzcyBuYW1lcyBvZiB0aGUgYWN0dWFsIGNvbnN0cnVjdCBzaWduYXR1cmVzIGJlY2F1c2Ugd2UgY2Fubm90IGFzc3VtZSB0aGF0XG4gICAgICAvLyB0aGUgZGlhZ25vc3RpYyByZWZlcnMgdG8gYSBjb25zdHJ1Y3RvciBvZiB0aGUgYWN0dWFsIGV4cHJlc3Npb24uIEluIGNhc2UgdGhlIGNvbnN0cnVjdG9yXG4gICAgICAvLyBpcyBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gZGV0ZWN0IHRoYXQgdGhlIG93bmVyLWNsYXNzIG9mIHRoZSBjb25zdHJ1Y3RvciBpcyBhZGRlZCB0byB0aGVcbiAgICAgIC8vIGNvbnN0cnVjdG9yIGNoZWNrcyB1cGdyYWRlIGRhdGEuIGUuZy4gYGNsYXNzIEN1c3RvbUNhbGVuZGFyIGV4dGVuZHMgTWF0Q2FsZW5kYXIge31gLlxuICAgICAgY29uc3Qgc2lnbmF0dXJlQ2xhc3NOYW1lcyA9IGNsYXNzVHlwZVxuICAgICAgICAuZ2V0Q29uc3RydWN0U2lnbmF0dXJlcygpXG4gICAgICAgIC5tYXAoc2lnbmF0dXJlID0+IGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmUpKVxuICAgICAgICAubWFwKGRlY2xhcmF0aW9uID0+IChkZWNsYXJhdGlvbiAmJiBkZWNsYXJhdGlvbi5uYW1lID8gZGVjbGFyYXRpb24ubmFtZS50ZXh0IDogbnVsbCkpXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbik7XG5cbiAgICAgIC8vIEJlc2lkZXMgY2hlY2tpbmcgdGhlIHNpZ25hdHVyZSBjbGFzcyBuYW1lcywgd2UgbmVlZCB0byBjaGVjayB0aGUgYWN0dWFsIGNsYXNzIG5hbWUgYmVjYXVzZVxuICAgICAgLy8gdGhlcmUgY2FuIGJlIGNsYXNzZXMgd2l0aG91dCBhbiBleHBsaWNpdCBjb25zdHJ1Y3Rvci5cbiAgICAgIGlmIChcbiAgICAgICAgIXRoaXMuZGF0YS5pbmNsdWRlcyhjbGFzc05hbWUpICYmXG4gICAgICAgICFzaWduYXR1cmVDbGFzc05hbWVzLnNvbWUobmFtZSA9PiB0aGlzLmRhdGEuaW5jbHVkZXMobmFtZSEpKVxuICAgICAgKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGFzc1NpZ25hdHVyZXMgPSBjbGFzc1R5cGVcbiAgICAgICAgLmdldENvbnN0cnVjdFNpZ25hdHVyZXMoKVxuICAgICAgICAubWFwKHNpZ25hdHVyZSA9PiBnZXRQYXJhbWV0ZXJUeXBlc0Zyb21TaWduYXR1cmUoc2lnbmF0dXJlLCB0aGlzLnR5cGVDaGVja2VyKSk7XG5cbiAgICAgIGNvbnN0IGV4cHJlc3Npb25OYW1lID0gaXNOZXdFeHByZXNzaW9uID8gYG5ldyAke2NsYXNzTmFtZX1gIDogJ3N1cGVyJztcbiAgICAgIGNvbnN0IHNpZ25hdHVyZXMgPSBjbGFzc1NpZ25hdHVyZXNcbiAgICAgICAgLm1hcChzaWduYXR1cmUgPT5cbiAgICAgICAgICBzaWduYXR1cmUubWFwKHQgPT4gKHQgPT09IG51bGwgPyAnYW55JyA6IHRoaXMudHlwZUNoZWNrZXIudHlwZVRvU3RyaW5nKHQpKSksXG4gICAgICAgIClcbiAgICAgICAgLm1hcChzaWduYXR1cmUgPT4gYCR7ZXhwcmVzc2lvbk5hbWV9KCR7c2lnbmF0dXJlLmpvaW4oJywgJyl9KWApXG4gICAgICAgIC5qb2luKCcgb3IgJyk7XG5cbiAgICAgIHRoaXMuY3JlYXRlRmFpbHVyZUF0Tm9kZShcbiAgICAgICAgbm9kZSxcbiAgICAgICAgYEZvdW5kIFwiJHtjbGFzc05hbWV9XCIgY29uc3RydWN0ZWQgd2l0aCBgICtcbiAgICAgICAgICBgYW4gaW52YWxpZCBzaWduYXR1cmUuIFBsZWFzZSBtYW51YWxseSB1cGRhdGUgdGhlICR7ZXhwcmVzc2lvbk5hbWV9IGV4cHJlc3Npb24gdG8gYCArXG4gICAgICAgICAgYG1hdGNoIHRoZSBuZXcgc2lnbmF0dXJlJHtjbGFzc1NpZ25hdHVyZXMubGVuZ3RoID4gMSA/ICdzJyA6ICcnfTogJHtzaWduYXR1cmVzfWAsXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG4vKiogUmVzb2x2ZXMgdGhlIHR5cGUgZm9yIGVhY2ggcGFyYW1ldGVyIGluIHRoZSBzcGVjaWZpZWQgc2lnbmF0dXJlLiAqL1xuZnVuY3Rpb24gZ2V0UGFyYW1ldGVyVHlwZXNGcm9tU2lnbmF0dXJlKFxuICBzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSxcbiAgdHlwZUNoZWNrZXI6IHRzLlR5cGVDaGVja2VyLFxuKTogKHRzLlR5cGUgfCBudWxsKVtdIHtcbiAgcmV0dXJuIHNpZ25hdHVyZVxuICAgIC5nZXRQYXJhbWV0ZXJzKClcbiAgICAubWFwKHBhcmFtID0+XG4gICAgICBwYXJhbS5kZWNsYXJhdGlvbnMgPyB0eXBlQ2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihwYXJhbS5kZWNsYXJhdGlvbnNbMF0pIDogbnVsbCxcbiAgICApO1xufVxuXG4vKipcbiAqIFdhbGtzIHRocm91Z2ggZWFjaCBub2RlIG9mIGEgc291cmNlIGZpbGUgaW4gb3JkZXIgdG8gZmluZCBhIG5ldy1leHByZXNzaW9uIG5vZGUgb3Igc3VwZXItY2FsbFxuICogZXhwcmVzc2lvbiBub2RlIHRoYXQgaXMgY2FwdHVyZWQgYnkgdGhlIHNwZWNpZmllZCBkaWFnbm9zdGljLlxuICovXG5mdW5jdGlvbiBmaW5kQ29uc3RydWN0b3JOb2RlKFxuICBkaWFnbm9zdGljOiB0cy5EaWFnbm9zdGljLFxuICBzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlLFxuKTogdHMuQ2FsbEV4cHJlc3Npb24gfCB0cy5OZXdFeHByZXNzaW9uIHwgbnVsbCB7XG4gIGxldCByZXNvbHZlZE5vZGU6IHRzLk5vZGUgfCBudWxsID0gbnVsbDtcblxuICBjb25zdCBfdmlzaXROb2RlID0gKG5vZGU6IHRzLk5vZGUpID0+IHtcbiAgICAvLyBDaGVjayB3aGV0aGVyIHRoZSBjdXJyZW50IG5vZGUgY29udGFpbnMgdGhlIGRpYWdub3N0aWMuIElmIHRoZSBub2RlIGNvbnRhaW5zIHRoZSBkaWFnbm9zdGljLFxuICAgIC8vIHdhbGsgZGVlcGVyIGluIG9yZGVyIHRvIGZpbmQgYWxsIGNvbnN0cnVjdG9yIGV4cHJlc3Npb24gbm9kZXMuXG4gICAgaWYgKG5vZGUuZ2V0U3RhcnQoKSA8PSBkaWFnbm9zdGljLnN0YXJ0ISAmJiBub2RlLmdldEVuZCgpID49IGRpYWdub3N0aWMuc3RhcnQhKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKSB8fFxuICAgICAgICAodHMuaXNDYWxsRXhwcmVzc2lvbihub2RlKSAmJiBub2RlLmV4cHJlc3Npb24ua2luZCA9PT0gdHMuU3ludGF4S2luZC5TdXBlcktleXdvcmQpXG4gICAgICApIHtcbiAgICAgICAgcmVzb2x2ZWROb2RlID0gbm9kZTtcbiAgICAgIH1cblxuICAgICAgdHMuZm9yRWFjaENoaWxkKG5vZGUsIF92aXNpdE5vZGUpO1xuICAgIH1cbiAgfTtcblxuICB0cy5mb3JFYWNoQ2hpbGQoc291cmNlRmlsZSwgX3Zpc2l0Tm9kZSk7XG5cbiAgcmV0dXJuIHJlc29sdmVkTm9kZTtcbn1cblxuLyoqIERldGVybWluZXMgdGhlIGNsYXNzIGRlY2xhcmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgY29uc3RydWN0IHNpZ25hdHVyZS4gKi9cbmZ1bmN0aW9uIGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSk6IHRzLkNsYXNzRGVjbGFyYXRpb24gfCBudWxsIHtcbiAgbGV0IG5vZGU6IHRzLk5vZGUgPSBzaWduYXR1cmUuZ2V0RGVjbGFyYXRpb24oKTtcbiAgLy8gSGFuZGxlIHNpZ25hdHVyZXMgd2hpY2ggZG9uJ3QgaGF2ZSBhbiBhY3R1YWwgZGVjbGFyYXRpb24uIFRoaXMgaGFwcGVucyBpZiBhIGNsYXNzXG4gIC8vIGRvZXMgbm90IGhhdmUgYW4gZXhwbGljaXRseSB3cml0dGVuIGNvbnN0cnVjdG9yLlxuICBpZiAoIW5vZGUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICB3aGlsZSAoIXRzLmlzU291cmNlRmlsZSgobm9kZSA9IG5vZGUucGFyZW50KSkpIHtcbiAgICBpZiAodHMuaXNDbGFzc0RlY2xhcmF0aW9uKG5vZGUpKSB7XG4gICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG4iXX0=
|
|
@@ -20,7 +20,7 @@ class CssSelectorsMigration extends migration_1.Migration {
|
|
|
20
20
|
constructor() {
|
|
21
21
|
super(...arguments);
|
|
22
22
|
/** Change data that upgrades to the specified target version. */
|
|
23
|
-
this.data = upgrade_data_1.getVersionUpgradeData(this, 'cssSelectors');
|
|
23
|
+
this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'cssSelectors');
|
|
24
24
|
// Only enable the migration rule if there is upgrade data.
|
|
25
25
|
this.enabled = this.data.length !== 0;
|
|
26
26
|
}
|
|
@@ -34,7 +34,7 @@ class CssSelectorsMigration extends migration_1.Migration {
|
|
|
34
34
|
if (data.replaceIn && !data.replaceIn.html) {
|
|
35
35
|
return;
|
|
36
36
|
}
|
|
37
|
-
literal_1.findAllSubstringIndices(template.content, data.replace)
|
|
37
|
+
(0, literal_1.findAllSubstringIndices)(template.content, data.replace)
|
|
38
38
|
.map(offset => template.start + offset)
|
|
39
39
|
.forEach(start => this._replaceSelector(template.filePath, start, data));
|
|
40
40
|
});
|
|
@@ -44,7 +44,7 @@ class CssSelectorsMigration extends migration_1.Migration {
|
|
|
44
44
|
if (data.replaceIn && !data.replaceIn.stylesheet) {
|
|
45
45
|
return;
|
|
46
46
|
}
|
|
47
|
-
literal_1.findAllSubstringIndices(stylesheet.content, data.replace)
|
|
47
|
+
(0, literal_1.findAllSubstringIndices)(stylesheet.content, data.replace)
|
|
48
48
|
.map(offset => stylesheet.start + offset)
|
|
49
49
|
.forEach(start => this._replaceSelector(stylesheet.filePath, start, data));
|
|
50
50
|
});
|
|
@@ -59,16 +59,17 @@ class CssSelectorsMigration extends migration_1.Migration {
|
|
|
59
59
|
if (data.replaceIn && !data.replaceIn.tsStringLiterals) {
|
|
60
60
|
return;
|
|
61
61
|
}
|
|
62
|
-
literal_1.findAllSubstringIndices(textContent, data.replace)
|
|
62
|
+
(0, literal_1.findAllSubstringIndices)(textContent, data.replace)
|
|
63
63
|
.map(offset => node.getStart() + offset)
|
|
64
64
|
.forEach(start => this._replaceSelector(filePath, start, data));
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
67
|
_replaceSelector(filePath, start, data) {
|
|
68
|
-
this.fileSystem
|
|
68
|
+
this.fileSystem
|
|
69
|
+
.edit(filePath)
|
|
69
70
|
.remove(start, data.replace.length)
|
|
70
71
|
.insertRight(start, data.replaceWith);
|
|
71
72
|
}
|
|
72
73
|
}
|
|
73
74
|
exports.CssSelectorsMigration = CssSelectorsMigration;
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLXNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy9uZy11cGRhdGUvbWlncmF0aW9ucy9jc3Mtc2VsZWN0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILGlDQUFpQztBQUdqQywyREFBc0Q7QUFFdEQsbURBQThEO0FBQzlELGtEQUFtRTtBQUVuRTs7O0dBR0c7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHFCQUFzQjtJQUFqRTs7UUFDRSxpRUFBaUU7UUFDakUsU0FBSSxHQUE2QixJQUFBLG9DQUFxQixFQUFDLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztRQUU3RSwyREFBMkQ7UUFDM0QsWUFBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQXlEbkMsQ0FBQztJQXZEVSxTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRVEsYUFBYSxDQUFDLFFBQTBCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO2dCQUMxQyxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQztpQkFDcEQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7aUJBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLGVBQWUsQ0FBQyxVQUE0QjtRQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRTtnQkFDaEQsT0FBTzthQUNSO1lBRUQsSUFBQSxpQ0FBdUIsRUFBQyxVQUFVLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7aUJBQ3RELEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO2lCQUN4QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMvRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxJQUEwQjtRQUN4RCxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUU7WUFDcEUsT0FBTztTQUNSO1FBRUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFO2dCQUN0RCxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO2lCQUMvQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDO2lCQUN2QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFFBQXVCLEVBQUUsS0FBYSxFQUFFLElBQTRCO1FBQzNGLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDbEMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBOURELHNEQThEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7V29ya3NwYWNlUGF0aH0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvZmlsZS1zeXN0ZW0nO1xuaW1wb3J0IHtSZXNvbHZlZFJlc291cmNlfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9jb21wb25lbnQtcmVzb3VyY2UtY29sbGVjdG9yJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtDc3NTZWxlY3RvclVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhL2Nzcy1zZWxlY3RvcnMnO1xuaW1wb3J0IHtmaW5kQWxsU3Vic3RyaW5nSW5kaWNlc30gZnJvbSAnLi4vdHlwZXNjcmlwdC9saXRlcmFsJztcbmltcG9ydCB7Z2V0VmVyc2lvblVwZ3JhZGVEYXRhLCBVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB3YWxrcyB0aHJvdWdoIGV2ZXJ5IHN0cmluZyBsaXRlcmFsLCB0ZW1wbGF0ZSBhbmQgc3R5bGVzaGVldCBpblxuICogb3JkZXIgdG8gbWlncmF0ZSBvdXRkYXRlZCBDU1Mgc2VsZWN0b3JzIHRvIHRoZSBuZXcgc2VsZWN0b3IuXG4gKi9cbmV4cG9ydCBjbGFzcyBDc3NTZWxlY3RvcnNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YVtdID0gZ2V0VmVyc2lvblVwZ3JhZGVEYXRhKHRoaXMsICdjc3NTZWxlY3RvcnMnKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5kYXRhLmxlbmd0aCAhPT0gMDtcblxuICBvdmVycmlkZSB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc1N0cmluZ0xpdGVyYWxMaWtlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0VGVtcGxhdGUodGVtcGxhdGU6IFJlc29sdmVkUmVzb3VyY2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGEuZm9yRWFjaChkYXRhID0+IHtcbiAgICAgIGlmIChkYXRhLnJlcGxhY2VJbiAmJiAhZGF0YS5yZXBsYWNlSW4uaHRtbCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHRlbXBsYXRlLmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gdGVtcGxhdGUuc3RhcnQgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3Rvcih0ZW1wbGF0ZS5maWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0U3R5bGVzaGVldChzdHlsZXNoZWV0OiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnN0eWxlc2hlZXQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyhzdHlsZXNoZWV0LmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gc3R5bGVzaGVldC5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT4gdGhpcy5fcmVwbGFjZVNlbGVjdG9yKHN0eWxlc2hlZXQuZmlsZVBhdGgsIHN0YXJ0LCBkYXRhKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGU6IHRzLlN0cmluZ0xpdGVyYWxMaWtlKSB7XG4gICAgaWYgKG5vZGUucGFyZW50ICYmIG5vZGUucGFyZW50LmtpbmQgIT09IHRzLlN5bnRheEtpbmQuQ2FsbEV4cHJlc3Npb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB0ZXh0Q29udGVudCA9IG5vZGUuZ2V0VGV4dCgpO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlU3lzdGVtLnJlc29sdmUobm9kZS5nZXRTb3VyY2VGaWxlKCkuZmlsZU5hbWUpO1xuXG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnRzU3RyaW5nTGl0ZXJhbHMpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyh0ZXh0Q29udGVudCwgZGF0YS5yZXBsYWNlKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBub2RlLmdldFN0YXJ0KCkgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aDogV29ya3NwYWNlUGF0aCwgc3RhcnQ6IG51bWJlciwgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YSkge1xuICAgIHRoaXMuZmlsZVN5c3RlbVxuICAgICAgLmVkaXQoZmlsZVBhdGgpXG4gICAgICAucmVtb3ZlKHN0YXJ0LCBkYXRhLnJlcGxhY2UubGVuZ3RoKVxuICAgICAgLmluc2VydFJpZ2h0KHN0YXJ0LCBkYXRhLnJlcGxhY2VXaXRoKTtcbiAgfVxufVxuIl19
|
|
@@ -20,7 +20,7 @@ class CssSelectorsMigration extends migration_1.Migration {
|
|
|
20
20
|
constructor() {
|
|
21
21
|
super(...arguments);
|
|
22
22
|
/** Change data that upgrades to the specified target version. */
|
|
23
|
-
this.data = upgrade_data_1.getVersionUpgradeData(this, 'cssSelectors');
|
|
23
|
+
this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'cssSelectors');
|
|
24
24
|
// Only enable the migration rule if there is upgrade data.
|
|
25
25
|
this.enabled = this.data.length !== 0;
|
|
26
26
|
}
|
|
@@ -34,7 +34,7 @@ class CssSelectorsMigration extends migration_1.Migration {
|
|
|
34
34
|
if (data.replaceIn && !data.replaceIn.html) {
|
|
35
35
|
return;
|
|
36
36
|
}
|
|
37
|
-
literal_1.findAllSubstringIndices(template.content, data.replace)
|
|
37
|
+
(0, literal_1.findAllSubstringIndices)(template.content, data.replace)
|
|
38
38
|
.map(offset => template.start + offset)
|
|
39
39
|
.forEach(start => this._replaceSelector(template.filePath, start, data));
|
|
40
40
|
});
|
|
@@ -44,7 +44,7 @@ class CssSelectorsMigration extends migration_1.Migration {
|
|
|
44
44
|
if (data.replaceIn && !data.replaceIn.stylesheet) {
|
|
45
45
|
return;
|
|
46
46
|
}
|
|
47
|
-
literal_1.findAllSubstringIndices(stylesheet.content, data.replace)
|
|
47
|
+
(0, literal_1.findAllSubstringIndices)(stylesheet.content, data.replace)
|
|
48
48
|
.map(offset => stylesheet.start + offset)
|
|
49
49
|
.forEach(start => this._replaceSelector(stylesheet.filePath, start, data));
|
|
50
50
|
});
|
|
@@ -59,16 +59,17 @@ class CssSelectorsMigration extends migration_1.Migration {
|
|
|
59
59
|
if (data.replaceIn && !data.replaceIn.tsStringLiterals) {
|
|
60
60
|
return;
|
|
61
61
|
}
|
|
62
|
-
literal_1.findAllSubstringIndices(textContent, data.replace)
|
|
62
|
+
(0, literal_1.findAllSubstringIndices)(textContent, data.replace)
|
|
63
63
|
.map(offset => node.getStart() + offset)
|
|
64
64
|
.forEach(start => this._replaceSelector(filePath, start, data));
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
67
|
_replaceSelector(filePath, start, data) {
|
|
68
|
-
this.fileSystem
|
|
68
|
+
this.fileSystem
|
|
69
|
+
.edit(filePath)
|
|
69
70
|
.remove(start, data.replace.length)
|
|
70
71
|
.insertRight(start, data.replaceWith);
|
|
71
72
|
}
|
|
72
73
|
}
|
|
73
74
|
exports.CssSelectorsMigration = CssSelectorsMigration;
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLXNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy9uZy11cGRhdGUvbWlncmF0aW9ucy9jc3Mtc2VsZWN0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILGlDQUFpQztBQUdqQywyREFBc0Q7QUFFdEQsbURBQThEO0FBQzlELGtEQUFtRTtBQUVuRTs7O0dBR0c7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHFCQUFzQjtJQUFqRTs7UUFDRSxpRUFBaUU7UUFDakUsU0FBSSxHQUE2QixJQUFBLG9DQUFxQixFQUFDLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztRQUU3RSwyREFBMkQ7UUFDM0QsWUFBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQXlEbkMsQ0FBQztJQXZEVSxTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRVEsYUFBYSxDQUFDLFFBQTBCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO2dCQUMxQyxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQztpQkFDcEQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7aUJBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLGVBQWUsQ0FBQyxVQUE0QjtRQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRTtnQkFDaEQsT0FBTzthQUNSO1lBRUQsSUFBQSxpQ0FBdUIsRUFBQyxVQUFVLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7aUJBQ3RELEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO2lCQUN4QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMvRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxJQUEwQjtRQUN4RCxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUU7WUFDcEUsT0FBTztTQUNSO1FBRUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFO2dCQUN0RCxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO2lCQUMvQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDO2lCQUN2QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFFBQXVCLEVBQUUsS0FBYSxFQUFFLElBQTRCO1FBQzNGLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDbEMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBOURELHNEQThEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7V29ya3NwYWNlUGF0aH0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvZmlsZS1zeXN0ZW0nO1xuaW1wb3J0IHtSZXNvbHZlZFJlc291cmNlfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9jb21wb25lbnQtcmVzb3VyY2UtY29sbGVjdG9yJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtDc3NTZWxlY3RvclVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhL2Nzcy1zZWxlY3RvcnMnO1xuaW1wb3J0IHtmaW5kQWxsU3Vic3RyaW5nSW5kaWNlc30gZnJvbSAnLi4vdHlwZXNjcmlwdC9saXRlcmFsJztcbmltcG9ydCB7Z2V0VmVyc2lvblVwZ3JhZGVEYXRhLCBVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB3YWxrcyB0aHJvdWdoIGV2ZXJ5IHN0cmluZyBsaXRlcmFsLCB0ZW1wbGF0ZSBhbmQgc3R5bGVzaGVldCBpblxuICogb3JkZXIgdG8gbWlncmF0ZSBvdXRkYXRlZCBDU1Mgc2VsZWN0b3JzIHRvIHRoZSBuZXcgc2VsZWN0b3IuXG4gKi9cbmV4cG9ydCBjbGFzcyBDc3NTZWxlY3RvcnNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YVtdID0gZ2V0VmVyc2lvblVwZ3JhZGVEYXRhKHRoaXMsICdjc3NTZWxlY3RvcnMnKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5kYXRhLmxlbmd0aCAhPT0gMDtcblxuICBvdmVycmlkZSB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc1N0cmluZ0xpdGVyYWxMaWtlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0VGVtcGxhdGUodGVtcGxhdGU6IFJlc29sdmVkUmVzb3VyY2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGEuZm9yRWFjaChkYXRhID0+IHtcbiAgICAgIGlmIChkYXRhLnJlcGxhY2VJbiAmJiAhZGF0YS5yZXBsYWNlSW4uaHRtbCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHRlbXBsYXRlLmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gdGVtcGxhdGUuc3RhcnQgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3Rvcih0ZW1wbGF0ZS5maWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0U3R5bGVzaGVldChzdHlsZXNoZWV0OiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnN0eWxlc2hlZXQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyhzdHlsZXNoZWV0LmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gc3R5bGVzaGVldC5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT4gdGhpcy5fcmVwbGFjZVNlbGVjdG9yKHN0eWxlc2hlZXQuZmlsZVBhdGgsIHN0YXJ0LCBkYXRhKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGU6IHRzLlN0cmluZ0xpdGVyYWxMaWtlKSB7XG4gICAgaWYgKG5vZGUucGFyZW50ICYmIG5vZGUucGFyZW50LmtpbmQgIT09IHRzLlN5bnRheEtpbmQuQ2FsbEV4cHJlc3Npb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB0ZXh0Q29udGVudCA9IG5vZGUuZ2V0VGV4dCgpO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlU3lzdGVtLnJlc29sdmUobm9kZS5nZXRTb3VyY2VGaWxlKCkuZmlsZU5hbWUpO1xuXG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnRzU3RyaW5nTGl0ZXJhbHMpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyh0ZXh0Q29udGVudCwgZGF0YS5yZXBsYWNlKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBub2RlLmdldFN0YXJ0KCkgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aDogV29ya3NwYWNlUGF0aCwgc3RhcnQ6IG51bWJlciwgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YSkge1xuICAgIHRoaXMuZmlsZVN5c3RlbVxuICAgICAgLmVkaXQoZmlsZVBhdGgpXG4gICAgICAucmVtb3ZlKHN0YXJ0LCBkYXRhLnJlcGxhY2UubGVuZ3RoKVxuICAgICAgLmluc2VydFJpZ2h0KHN0YXJ0LCBkYXRhLnJlcGxhY2VXaXRoKTtcbiAgfVxufVxuIl19
|
|
@@ -20,7 +20,7 @@ class ElementSelectorsMigration extends migration_1.Migration {
|
|
|
20
20
|
constructor() {
|
|
21
21
|
super(...arguments);
|
|
22
22
|
/** Change data that upgrades to the specified target version. */
|
|
23
|
-
this.data = upgrade_data_1.getVersionUpgradeData(this, 'elementSelectors');
|
|
23
|
+
this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'elementSelectors');
|
|
24
24
|
// Only enable the migration rule if there is upgrade data.
|
|
25
25
|
this.enabled = this.data.length !== 0;
|
|
26
26
|
}
|
|
@@ -31,14 +31,14 @@ class ElementSelectorsMigration extends migration_1.Migration {
|
|
|
31
31
|
}
|
|
32
32
|
visitTemplate(template) {
|
|
33
33
|
this.data.forEach(selector => {
|
|
34
|
-
literal_1.findAllSubstringIndices(template.content, selector.replace)
|
|
34
|
+
(0, literal_1.findAllSubstringIndices)(template.content, selector.replace)
|
|
35
35
|
.map(offset => template.start + offset)
|
|
36
36
|
.forEach(start => this._replaceSelector(template.filePath, start, selector));
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
visitStylesheet(stylesheet) {
|
|
40
40
|
this.data.forEach(selector => {
|
|
41
|
-
literal_1.findAllSubstringIndices(stylesheet.content, selector.replace)
|
|
41
|
+
(0, literal_1.findAllSubstringIndices)(stylesheet.content, selector.replace)
|
|
42
42
|
.map(offset => stylesheet.start + offset)
|
|
43
43
|
.forEach(start => this._replaceSelector(stylesheet.filePath, start, selector));
|
|
44
44
|
});
|
|
@@ -50,16 +50,17 @@ class ElementSelectorsMigration extends migration_1.Migration {
|
|
|
50
50
|
const textContent = node.getText();
|
|
51
51
|
const filePath = this.fileSystem.resolve(node.getSourceFile().fileName);
|
|
52
52
|
this.data.forEach(selector => {
|
|
53
|
-
literal_1.findAllSubstringIndices(textContent, selector.replace)
|
|
53
|
+
(0, literal_1.findAllSubstringIndices)(textContent, selector.replace)
|
|
54
54
|
.map(offset => node.getStart() + offset)
|
|
55
55
|
.forEach(start => this._replaceSelector(filePath, start, selector));
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
58
|
_replaceSelector(filePath, start, data) {
|
|
59
|
-
this.fileSystem
|
|
59
|
+
this.fileSystem
|
|
60
|
+
.edit(filePath)
|
|
60
61
|
.remove(start, data.replace.length)
|
|
61
62
|
.insertRight(start, data.replaceWith);
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
65
|
exports.ElementSelectorsMigration = ElementSelectorsMigration;
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1zZWxlY3RvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvZWxlbWVudC1zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBR2pDLDJEQUFzRDtBQUV0RCxtREFBOEQ7QUFDOUQsa0RBQW1FO0FBRW5FOzs7R0FHRztBQUNILE1BQWEseUJBQTBCLFNBQVEscUJBQXNCO0lBQXJFOztRQUNFLGlFQUFpRTtRQUNqRSxTQUFJLEdBQUcsSUFBQSxvQ0FBcUIsRUFBQyxJQUFJLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUV2RCwyREFBMkQ7UUFDM0QsWUFBTyxHQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQWlENUMsQ0FBQztJQS9DVSxTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRVEsYUFBYSxDQUFDLFFBQTBCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLElBQUEsaUNBQXVCLEVBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO2lCQUN4RCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDakYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVEsZUFBZSxDQUFDLFVBQTRCO1FBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLElBQUEsaUNBQXVCLEVBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO2lCQUMxRCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDeEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDbkYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sdUJBQXVCLENBQUMsSUFBMEI7UUFDeEQsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFO1lBQ3BFLE9BQU87U0FDUjtRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNuQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFeEUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDM0IsSUFBQSxpQ0FBdUIsRUFBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQztpQkFDbkQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLE1BQU0sQ0FBQztpQkFDdkMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN4RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0IsQ0FDdEIsUUFBdUIsRUFDdkIsS0FBYSxFQUNiLElBQWdDO1FBRWhDLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDbEMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBdERELDhEQXNEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7UmVzb2x2ZWRSZXNvdXJjZX0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvY29tcG9uZW50LXJlc291cmNlLWNvbGxlY3Rvcic7XG5pbXBvcnQge1dvcmtzcGFjZVBhdGh9IGZyb20gJy4uLy4uL3VwZGF0ZS10b29sL2ZpbGUtc3lzdGVtJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtFbGVtZW50U2VsZWN0b3JVcGdyYWRlRGF0YX0gZnJvbSAnLi4vZGF0YS9lbGVtZW50LXNlbGVjdG9ycyc7XG5pbXBvcnQge2ZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzfSBmcm9tICcuLi90eXBlc2NyaXB0L2xpdGVyYWwnO1xuaW1wb3J0IHtnZXRWZXJzaW9uVXBncmFkZURhdGEsIFVwZ3JhZGVEYXRhfSBmcm9tICcuLi91cGdyYWRlLWRhdGEnO1xuXG4vKipcbiAqIE1pZ3JhdGlvbiB0aGF0IHdhbGtzIHRocm91Z2ggZXZlcnkgc3RyaW5nIGxpdGVyYWwsIHRlbXBsYXRlIGFuZCBzdHlsZXNoZWV0IGluIG9yZGVyXG4gKiB0byBtaWdyYXRlIG91dGRhdGVkIGVsZW1lbnQgc2VsZWN0b3JzIHRvIHRoZSBuZXcgb25lLlxuICovXG5leHBvcnQgY2xhc3MgRWxlbWVudFNlbGVjdG9yc01pZ3JhdGlvbiBleHRlbmRzIE1pZ3JhdGlvbjxVcGdyYWRlRGF0YT4ge1xuICAvKiogQ2hhbmdlIGRhdGEgdGhhdCB1cGdyYWRlcyB0byB0aGUgc3BlY2lmaWVkIHRhcmdldCB2ZXJzaW9uLiAqL1xuICBkYXRhID0gZ2V0VmVyc2lvblVwZ3JhZGVEYXRhKHRoaXMsICdlbGVtZW50U2VsZWN0b3JzJyk7XG5cbiAgLy8gT25seSBlbmFibGUgdGhlIG1pZ3JhdGlvbiBydWxlIGlmIHRoZXJlIGlzIHVwZ3JhZGUgZGF0YS5cbiAgZW5hYmxlZDogYm9vbGVhbiA9IHRoaXMuZGF0YS5sZW5ndGggIT09IDA7XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNTdHJpbmdMaXRlcmFsTGlrZShub2RlKSkge1xuICAgICAgdGhpcy5fdmlzaXRTdHJpbmdMaXRlcmFsTGlrZShub2RlKTtcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSB2aXNpdFRlbXBsYXRlKHRlbXBsYXRlOiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goc2VsZWN0b3IgPT4ge1xuICAgICAgZmluZEFsbFN1YnN0cmluZ0luZGljZXModGVtcGxhdGUuY29udGVudCwgc2VsZWN0b3IucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gdGVtcGxhdGUuc3RhcnQgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3Rvcih0ZW1wbGF0ZS5maWxlUGF0aCwgc3RhcnQsIHNlbGVjdG9yKSk7XG4gICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSB2aXNpdFN0eWxlc2hlZXQoc3R5bGVzaGVldDogUmVzb2x2ZWRSZXNvdXJjZSk6IHZvaWQge1xuICAgIHRoaXMuZGF0YS5mb3JFYWNoKHNlbGVjdG9yID0+IHtcbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHN0eWxlc2hlZXQuY29udGVudCwgc2VsZWN0b3IucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gc3R5bGVzaGVldC5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT4gdGhpcy5fcmVwbGFjZVNlbGVjdG9yKHN0eWxlc2hlZXQuZmlsZVBhdGgsIHN0YXJ0LCBzZWxlY3RvcikpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdmlzaXRTdHJpbmdMaXRlcmFsTGlrZShub2RlOiB0cy5TdHJpbmdMaXRlcmFsTGlrZSkge1xuICAgIGlmIChub2RlLnBhcmVudCAmJiBub2RlLnBhcmVudC5raW5kICE9PSB0cy5TeW50YXhLaW5kLkNhbGxFeHByZXNzaW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdGV4dENvbnRlbnQgPSBub2RlLmdldFRleHQoKTtcbiAgICBjb25zdCBmaWxlUGF0aCA9IHRoaXMuZmlsZVN5c3RlbS5yZXNvbHZlKG5vZGUuZ2V0U291cmNlRmlsZSgpLmZpbGVOYW1lKTtcblxuICAgIHRoaXMuZGF0YS5mb3JFYWNoKHNlbGVjdG9yID0+IHtcbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHRleHRDb250ZW50LCBzZWxlY3Rvci5yZXBsYWNlKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBub2RlLmdldFN0YXJ0KCkgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aCwgc3RhcnQsIHNlbGVjdG9yKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9yZXBsYWNlU2VsZWN0b3IoXG4gICAgZmlsZVBhdGg6IFdvcmtzcGFjZVBhdGgsXG4gICAgc3RhcnQ6IG51bWJlcixcbiAgICBkYXRhOiBFbGVtZW50U2VsZWN0b3JVcGdyYWRlRGF0YSxcbiAgKSB7XG4gICAgdGhpcy5maWxlU3lzdGVtXG4gICAgICAuZWRpdChmaWxlUGF0aClcbiAgICAgIC5yZW1vdmUoc3RhcnQsIGRhdGEucmVwbGFjZS5sZW5ndGgpXG4gICAgICAuaW5zZXJ0UmlnaHQoc3RhcnQsIGRhdGEucmVwbGFjZVdpdGgpO1xuICB9XG59XG4iXX0=
|
|
@@ -20,7 +20,7 @@ class ElementSelectorsMigration extends migration_1.Migration {
|
|
|
20
20
|
constructor() {
|
|
21
21
|
super(...arguments);
|
|
22
22
|
/** Change data that upgrades to the specified target version. */
|
|
23
|
-
this.data = upgrade_data_1.getVersionUpgradeData(this, 'elementSelectors');
|
|
23
|
+
this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'elementSelectors');
|
|
24
24
|
// Only enable the migration rule if there is upgrade data.
|
|
25
25
|
this.enabled = this.data.length !== 0;
|
|
26
26
|
}
|
|
@@ -31,14 +31,14 @@ class ElementSelectorsMigration extends migration_1.Migration {
|
|
|
31
31
|
}
|
|
32
32
|
visitTemplate(template) {
|
|
33
33
|
this.data.forEach(selector => {
|
|
34
|
-
literal_1.findAllSubstringIndices(template.content, selector.replace)
|
|
34
|
+
(0, literal_1.findAllSubstringIndices)(template.content, selector.replace)
|
|
35
35
|
.map(offset => template.start + offset)
|
|
36
36
|
.forEach(start => this._replaceSelector(template.filePath, start, selector));
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
visitStylesheet(stylesheet) {
|
|
40
40
|
this.data.forEach(selector => {
|
|
41
|
-
literal_1.findAllSubstringIndices(stylesheet.content, selector.replace)
|
|
41
|
+
(0, literal_1.findAllSubstringIndices)(stylesheet.content, selector.replace)
|
|
42
42
|
.map(offset => stylesheet.start + offset)
|
|
43
43
|
.forEach(start => this._replaceSelector(stylesheet.filePath, start, selector));
|
|
44
44
|
});
|
|
@@ -50,16 +50,17 @@ class ElementSelectorsMigration extends migration_1.Migration {
|
|
|
50
50
|
const textContent = node.getText();
|
|
51
51
|
const filePath = this.fileSystem.resolve(node.getSourceFile().fileName);
|
|
52
52
|
this.data.forEach(selector => {
|
|
53
|
-
literal_1.findAllSubstringIndices(textContent, selector.replace)
|
|
53
|
+
(0, literal_1.findAllSubstringIndices)(textContent, selector.replace)
|
|
54
54
|
.map(offset => node.getStart() + offset)
|
|
55
55
|
.forEach(start => this._replaceSelector(filePath, start, selector));
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
58
|
_replaceSelector(filePath, start, data) {
|
|
59
|
-
this.fileSystem
|
|
59
|
+
this.fileSystem
|
|
60
|
+
.edit(filePath)
|
|
60
61
|
.remove(start, data.replace.length)
|
|
61
62
|
.insertRight(start, data.replaceWith);
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
65
|
exports.ElementSelectorsMigration = ElementSelectorsMigration;
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1zZWxlY3RvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvZWxlbWVudC1zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBR2pDLDJEQUFzRDtBQUV0RCxtREFBOEQ7QUFDOUQsa0RBQW1FO0FBRW5FOzs7R0FHRztBQUNILE1BQWEseUJBQTBCLFNBQVEscUJBQXNCO0lBQXJFOztRQUNFLGlFQUFpRTtRQUNqRSxTQUFJLEdBQUcsSUFBQSxvQ0FBcUIsRUFBQyxJQUFJLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUV2RCwyREFBMkQ7UUFDM0QsWUFBTyxHQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQWlENUMsQ0FBQztJQS9DVSxTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRVEsYUFBYSxDQUFDLFFBQTBCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLElBQUEsaUNBQXVCLEVBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO2lCQUN4RCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDakYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVEsZUFBZSxDQUFDLFVBQTRCO1FBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLElBQUEsaUNBQXVCLEVBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO2lCQUMxRCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDeEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDbkYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sdUJBQXVCLENBQUMsSUFBMEI7UUFDeEQsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFO1lBQ3BFLE9BQU87U0FDUjtRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNuQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFeEUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDM0IsSUFBQSxpQ0FBdUIsRUFBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQztpQkFDbkQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLE1BQU0sQ0FBQztpQkFDdkMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN4RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0IsQ0FDdEIsUUFBdUIsRUFDdkIsS0FBYSxFQUNiLElBQWdDO1FBRWhDLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDbEMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBdERELDhEQXNEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7UmVzb2x2ZWRSZXNvdXJjZX0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvY29tcG9uZW50LXJlc291cmNlLWNvbGxlY3Rvcic7XG5pbXBvcnQge1dvcmtzcGFjZVBhdGh9IGZyb20gJy4uLy4uL3VwZGF0ZS10b29sL2ZpbGUtc3lzdGVtJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtFbGVtZW50U2VsZWN0b3JVcGdyYWRlRGF0YX0gZnJvbSAnLi4vZGF0YS9lbGVtZW50LXNlbGVjdG9ycyc7XG5pbXBvcnQge2ZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzfSBmcm9tICcuLi90eXBlc2NyaXB0L2xpdGVyYWwnO1xuaW1wb3J0IHtnZXRWZXJzaW9uVXBncmFkZURhdGEsIFVwZ3JhZGVEYXRhfSBmcm9tICcuLi91cGdyYWRlLWRhdGEnO1xuXG4vKipcbiAqIE1pZ3JhdGlvbiB0aGF0IHdhbGtzIHRocm91Z2ggZXZlcnkgc3RyaW5nIGxpdGVyYWwsIHRlbXBsYXRlIGFuZCBzdHlsZXNoZWV0IGluIG9yZGVyXG4gKiB0byBtaWdyYXRlIG91dGRhdGVkIGVsZW1lbnQgc2VsZWN0b3JzIHRvIHRoZSBuZXcgb25lLlxuICovXG5leHBvcnQgY2xhc3MgRWxlbWVudFNlbGVjdG9yc01pZ3JhdGlvbiBleHRlbmRzIE1pZ3JhdGlvbjxVcGdyYWRlRGF0YT4ge1xuICAvKiogQ2hhbmdlIGRhdGEgdGhhdCB1cGdyYWRlcyB0byB0aGUgc3BlY2lmaWVkIHRhcmdldCB2ZXJzaW9uLiAqL1xuICBkYXRhID0gZ2V0VmVyc2lvblVwZ3JhZGVEYXRhKHRoaXMsICdlbGVtZW50U2VsZWN0b3JzJyk7XG5cbiAgLy8gT25seSBlbmFibGUgdGhlIG1pZ3JhdGlvbiBydWxlIGlmIHRoZXJlIGlzIHVwZ3JhZGUgZGF0YS5cbiAgZW5hYmxlZDogYm9vbGVhbiA9IHRoaXMuZGF0YS5sZW5ndGggIT09IDA7XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNTdHJpbmdMaXRlcmFsTGlrZShub2RlKSkge1xuICAgICAgdGhpcy5fdmlzaXRTdHJpbmdMaXRlcmFsTGlrZShub2RlKTtcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSB2aXNpdFRlbXBsYXRlKHRlbXBsYXRlOiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goc2VsZWN0b3IgPT4ge1xuICAgICAgZmluZEFsbFN1YnN0cmluZ0luZGljZXModGVtcGxhdGUuY29udGVudCwgc2VsZWN0b3IucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gdGVtcGxhdGUuc3RhcnQgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3Rvcih0ZW1wbGF0ZS5maWxlUGF0aCwgc3RhcnQsIHNlbGVjdG9yKSk7XG4gICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSB2aXNpdFN0eWxlc2hlZXQoc3R5bGVzaGVldDogUmVzb2x2ZWRSZXNvdXJjZSk6IHZvaWQge1xuICAgIHRoaXMuZGF0YS5mb3JFYWNoKHNlbGVjdG9yID0+IHtcbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHN0eWxlc2hlZXQuY29udGVudCwgc2VsZWN0b3IucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gc3R5bGVzaGVldC5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT4gdGhpcy5fcmVwbGFjZVNlbGVjdG9yKHN0eWxlc2hlZXQuZmlsZVBhdGgsIHN0YXJ0LCBzZWxlY3RvcikpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdmlzaXRTdHJpbmdMaXRlcmFsTGlrZShub2RlOiB0cy5TdHJpbmdMaXRlcmFsTGlrZSkge1xuICAgIGlmIChub2RlLnBhcmVudCAmJiBub2RlLnBhcmVudC5raW5kICE9PSB0cy5TeW50YXhLaW5kLkNhbGxFeHByZXNzaW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdGV4dENvbnRlbnQgPSBub2RlLmdldFRleHQoKTtcbiAgICBjb25zdCBmaWxlUGF0aCA9IHRoaXMuZmlsZVN5c3RlbS5yZXNvbHZlKG5vZGUuZ2V0U291cmNlRmlsZSgpLmZpbGVOYW1lKTtcblxuICAgIHRoaXMuZGF0YS5mb3JFYWNoKHNlbGVjdG9yID0+IHtcbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHRleHRDb250ZW50LCBzZWxlY3Rvci5yZXBsYWNlKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBub2RlLmdldFN0YXJ0KCkgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aCwgc3RhcnQsIHNlbGVjdG9yKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9yZXBsYWNlU2VsZWN0b3IoXG4gICAgZmlsZVBhdGg6IFdvcmtzcGFjZVBhdGgsXG4gICAgc3RhcnQ6IG51bWJlcixcbiAgICBkYXRhOiBFbGVtZW50U2VsZWN0b3JVcGdyYWRlRGF0YSxcbiAgKSB7XG4gICAgdGhpcy5maWxlU3lzdGVtXG4gICAgICAuZWRpdChmaWxlUGF0aClcbiAgICAgIC5yZW1vdmUoc3RhcnQsIGRhdGEucmVwbGFjZS5sZW5ndGgpXG4gICAgICAuaW5zZXJ0UmlnaHQoc3RhcnQsIGRhdGEucmVwbGFjZVdpdGgpO1xuICB9XG59XG4iXX0=
|
|
@@ -23,7 +23,7 @@ class InputNamesMigration extends migration_1.Migration {
|
|
|
23
23
|
constructor() {
|
|
24
24
|
super(...arguments);
|
|
25
25
|
/** Change data that upgrades to the specified target version. */
|
|
26
|
-
this.data = upgrade_data_1.getVersionUpgradeData(this, 'inputNames');
|
|
26
|
+
this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'inputNames');
|
|
27
27
|
// Only enable the migration rule if there is upgrade data.
|
|
28
28
|
this.enabled = this.data.length !== 0;
|
|
29
29
|
}
|
|
@@ -31,7 +31,7 @@ class InputNamesMigration extends migration_1.Migration {
|
|
|
31
31
|
this.data.forEach(name => {
|
|
32
32
|
const currentSelector = `[${name.replace}]`;
|
|
33
33
|
const updatedSelector = `[${name.replaceWith}]`;
|
|
34
|
-
literal_1.findAllSubstringIndices(stylesheet.content, currentSelector)
|
|
34
|
+
(0, literal_1.findAllSubstringIndices)(stylesheet.content, currentSelector)
|
|
35
35
|
.map(offset => stylesheet.start + offset)
|
|
36
36
|
.forEach(start => this._replaceInputName(stylesheet.filePath, start, currentSelector.length, updatedSelector));
|
|
37
37
|
});
|
|
@@ -41,20 +41,19 @@ class InputNamesMigration extends migration_1.Migration {
|
|
|
41
41
|
const limitedTo = name.limitedTo;
|
|
42
42
|
const relativeOffsets = [];
|
|
43
43
|
if (limitedTo.attributes) {
|
|
44
|
-
relativeOffsets.push(...angular_1.findInputsOnElementWithAttr(template.content, name.replace, limitedTo.attributes));
|
|
44
|
+
relativeOffsets.push(...(0, angular_1.findInputsOnElementWithAttr)(template.content, name.replace, limitedTo.attributes));
|
|
45
45
|
}
|
|
46
46
|
if (limitedTo.elements) {
|
|
47
|
-
relativeOffsets.push(...angular_1.findInputsOnElementWithTag(template.content, name.replace, limitedTo.elements));
|
|
47
|
+
relativeOffsets.push(...(0, angular_1.findInputsOnElementWithTag)(template.content, name.replace, limitedTo.elements));
|
|
48
48
|
}
|
|
49
|
-
relativeOffsets
|
|
49
|
+
relativeOffsets
|
|
50
|
+
.map(offset => template.start + offset)
|
|
50
51
|
.forEach(start => this._replaceInputName(template.filePath, start, name.replace.length, name.replaceWith));
|
|
51
52
|
});
|
|
52
53
|
}
|
|
53
54
|
_replaceInputName(filePath, start, width, newName) {
|
|
54
|
-
this.fileSystem.edit(filePath)
|
|
55
|
-
.remove(start, width)
|
|
56
|
-
.insertRight(start, newName);
|
|
55
|
+
this.fileSystem.edit(filePath).remove(start, width).insertRight(start, newName);
|
|
57
56
|
}
|
|
58
57
|
}
|
|
59
58
|
exports.InputNamesMigration = InputNamesMigration;
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvaW5wdXQtbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBR0gscURBQWdHO0FBRWhHLDJEQUFzRDtBQUd0RCxtREFBOEQ7QUFDOUQsa0RBQW1FO0FBRW5FOzs7Ozs7R0FNRztBQUNILE1BQWEsbUJBQW9CLFNBQVEscUJBQXNCO0lBQS9EOztRQUNFLGlFQUFpRTtRQUNqRSxTQUFJLEdBQTJCLElBQUEsb0NBQXFCLEVBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRXpFLDJEQUEyRDtRQUMzRCxZQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0lBcURuQyxDQUFDO0lBbkRVLGVBQWUsQ0FBQyxVQUE0QjtRQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixNQUFNLGVBQWUsR0FBRyxJQUFJLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQztZQUM1QyxNQUFNLGVBQWUsR0FBRyxJQUFJLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQztZQUVoRCxJQUFBLGlDQUF1QixFQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDO2lCQUN6RCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDeEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQ2YsSUFBSSxDQUFDLGlCQUFpQixDQUNwQixVQUFVLENBQUMsUUFBUSxFQUNuQixLQUFLLEVBQ0wsZUFBZSxDQUFDLE1BQU0sRUFDdEIsZUFBZSxDQUNoQixDQUNGLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxhQUFhLENBQUMsUUFBMEI7UUFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDdkIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNqQyxNQUFNLGVBQWUsR0FBYSxFQUFFLENBQUM7WUFFckMsSUFBSSxTQUFTLENBQUMsVUFBVSxFQUFFO2dCQUN4QixlQUFlLENBQUMsSUFBSSxDQUNsQixHQUFHLElBQUEscUNBQTJCLEVBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FDckYsQ0FBQzthQUNIO1lBRUQsSUFBSSxTQUFTLENBQUMsUUFBUSxFQUFFO2dCQUN0QixlQUFlLENBQUMsSUFBSSxDQUNsQixHQUFHLElBQUEsb0NBQTBCLEVBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FDbEYsQ0FBQzthQUNIO1lBRUQsZUFBZTtpQkFDWixHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQ2YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FDeEYsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQixDQUN2QixRQUF1QixFQUN2QixLQUFhLEVBQ2IsS0FBYSxFQUNiLE9BQWU7UUFFZixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbEYsQ0FBQztDQUNGO0FBMURELGtEQTBEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge1dvcmtzcGFjZVBhdGh9IGZyb20gJy4uLy4uL3VwZGF0ZS10b29sL2ZpbGUtc3lzdGVtJztcbmltcG9ydCB7ZmluZElucHV0c09uRWxlbWVudFdpdGhBdHRyLCBmaW5kSW5wdXRzT25FbGVtZW50V2l0aFRhZ30gZnJvbSAnLi4vaHRtbC1wYXJzaW5nL2FuZ3VsYXInO1xuaW1wb3J0IHtSZXNvbHZlZFJlc291cmNlfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9jb21wb25lbnQtcmVzb3VyY2UtY29sbGVjdG9yJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuXG5pbXBvcnQge0lucHV0TmFtZVVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhJztcbmltcG9ydCB7ZmluZEFsbFN1YnN0cmluZ0luZGljZXN9IGZyb20gJy4uL3R5cGVzY3JpcHQvbGl0ZXJhbCc7XG5pbXBvcnQge2dldFZlcnNpb25VcGdyYWRlRGF0YSwgVXBncmFkZURhdGF9IGZyb20gJy4uL3VwZ3JhZGUtZGF0YSc7XG5cbi8qKlxuICogTWlncmF0aW9uIHRoYXQgd2Fsa3MgdGhyb3VnaCBldmVyeSB0ZW1wbGF0ZSBvciBzdHlsZXNoZWV0IGFuZCByZXBsYWNlcyBvdXRkYXRlZCBpbnB1dFxuICogbmFtZXMgdG8gdGhlIG5ldyBpbnB1dCBuYW1lLiBTZWxlY3RvcnMgaW4gc3R5bGVzaGVldHMgY291bGQgYWxzbyB0YXJnZXQgaW5wdXRcbiAqIGJpbmRpbmdzIGRlY2xhcmVkIGFzIHN0YXRpYyBhdHRyaWJ1dGUuIFNlZSBmb3IgZXhhbXBsZTpcbiAqXG4gKiBlLmcuIGA8bXktY29tcG9uZW50IGNvbG9yPVwicHJpbWFyeVwiPmAgYmVjb21lcyBgbXktY29tcG9uZW50W2NvbG9yXWBcbiAqL1xuZXhwb3J0IGNsYXNzIElucHV0TmFtZXNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogSW5wdXROYW1lVXBncmFkZURhdGFbXSA9IGdldFZlcnNpb25VcGdyYWRlRGF0YSh0aGlzLCAnaW5wdXROYW1lcycpO1xuXG4gIC8vIE9ubHkgZW5hYmxlIHRoZSBtaWdyYXRpb24gcnVsZSBpZiB0aGVyZSBpcyB1cGdyYWRlIGRhdGEuXG4gIGVuYWJsZWQgPSB0aGlzLmRhdGEubGVuZ3RoICE9PSAwO1xuXG4gIG92ZXJyaWRlIHZpc2l0U3R5bGVzaGVldChzdHlsZXNoZWV0OiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2gobmFtZSA9PiB7XG4gICAgICBjb25zdCBjdXJyZW50U2VsZWN0b3IgPSBgWyR7bmFtZS5yZXBsYWNlfV1gO1xuICAgICAgY29uc3QgdXBkYXRlZFNlbGVjdG9yID0gYFske25hbWUucmVwbGFjZVdpdGh9XWA7XG5cbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHN0eWxlc2hlZXQuY29udGVudCwgY3VycmVudFNlbGVjdG9yKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBzdHlsZXNoZWV0LnN0YXJ0ICsgb2Zmc2V0KVxuICAgICAgICAuZm9yRWFjaChzdGFydCA9PlxuICAgICAgICAgIHRoaXMuX3JlcGxhY2VJbnB1dE5hbWUoXG4gICAgICAgICAgICBzdHlsZXNoZWV0LmZpbGVQYXRoLFxuICAgICAgICAgICAgc3RhcnQsXG4gICAgICAgICAgICBjdXJyZW50U2VsZWN0b3IubGVuZ3RoLFxuICAgICAgICAgICAgdXBkYXRlZFNlbGVjdG9yLFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSB2aXNpdFRlbXBsYXRlKHRlbXBsYXRlOiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2gobmFtZSA9PiB7XG4gICAgICBjb25zdCBsaW1pdGVkVG8gPSBuYW1lLmxpbWl0ZWRUbztcbiAgICAgIGNvbnN0IHJlbGF0aXZlT2Zmc2V0czogbnVtYmVyW10gPSBbXTtcblxuICAgICAgaWYgKGxpbWl0ZWRUby5hdHRyaWJ1dGVzKSB7XG4gICAgICAgIHJlbGF0aXZlT2Zmc2V0cy5wdXNoKFxuICAgICAgICAgIC4uLmZpbmRJbnB1dHNPbkVsZW1lbnRXaXRoQXR0cih0ZW1wbGF0ZS5jb250ZW50LCBuYW1lLnJlcGxhY2UsIGxpbWl0ZWRUby5hdHRyaWJ1dGVzKSxcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGxpbWl0ZWRUby5lbGVtZW50cykge1xuICAgICAgICByZWxhdGl2ZU9mZnNldHMucHVzaChcbiAgICAgICAgICAuLi5maW5kSW5wdXRzT25FbGVtZW50V2l0aFRhZyh0ZW1wbGF0ZS5jb250ZW50LCBuYW1lLnJlcGxhY2UsIGxpbWl0ZWRUby5lbGVtZW50cyksXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHJlbGF0aXZlT2Zmc2V0c1xuICAgICAgICAubWFwKG9mZnNldCA9PiB0ZW1wbGF0ZS5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT5cbiAgICAgICAgICB0aGlzLl9yZXBsYWNlSW5wdXROYW1lKHRlbXBsYXRlLmZpbGVQYXRoLCBzdGFydCwgbmFtZS5yZXBsYWNlLmxlbmd0aCwgbmFtZS5yZXBsYWNlV2l0aCksXG4gICAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9yZXBsYWNlSW5wdXROYW1lKFxuICAgIGZpbGVQYXRoOiBXb3Jrc3BhY2VQYXRoLFxuICAgIHN0YXJ0OiBudW1iZXIsXG4gICAgd2lkdGg6IG51bWJlcixcbiAgICBuZXdOYW1lOiBzdHJpbmcsXG4gICkge1xuICAgIHRoaXMuZmlsZVN5c3RlbS5lZGl0KGZpbGVQYXRoKS5yZW1vdmUoc3RhcnQsIHdpZHRoKS5pbnNlcnRSaWdodChzdGFydCwgbmV3TmFtZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -23,7 +23,7 @@ class InputNamesMigration extends migration_1.Migration {
|
|
|
23
23
|
constructor() {
|
|
24
24
|
super(...arguments);
|
|
25
25
|
/** Change data that upgrades to the specified target version. */
|
|
26
|
-
this.data = upgrade_data_1.getVersionUpgradeData(this, 'inputNames');
|
|
26
|
+
this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'inputNames');
|
|
27
27
|
// Only enable the migration rule if there is upgrade data.
|
|
28
28
|
this.enabled = this.data.length !== 0;
|
|
29
29
|
}
|
|
@@ -31,7 +31,7 @@ class InputNamesMigration extends migration_1.Migration {
|
|
|
31
31
|
this.data.forEach(name => {
|
|
32
32
|
const currentSelector = `[${name.replace}]`;
|
|
33
33
|
const updatedSelector = `[${name.replaceWith}]`;
|
|
34
|
-
literal_1.findAllSubstringIndices(stylesheet.content, currentSelector)
|
|
34
|
+
(0, literal_1.findAllSubstringIndices)(stylesheet.content, currentSelector)
|
|
35
35
|
.map(offset => stylesheet.start + offset)
|
|
36
36
|
.forEach(start => this._replaceInputName(stylesheet.filePath, start, currentSelector.length, updatedSelector));
|
|
37
37
|
});
|
|
@@ -41,20 +41,19 @@ class InputNamesMigration extends migration_1.Migration {
|
|
|
41
41
|
const limitedTo = name.limitedTo;
|
|
42
42
|
const relativeOffsets = [];
|
|
43
43
|
if (limitedTo.attributes) {
|
|
44
|
-
relativeOffsets.push(...angular_1.findInputsOnElementWithAttr(template.content, name.replace, limitedTo.attributes));
|
|
44
|
+
relativeOffsets.push(...(0, angular_1.findInputsOnElementWithAttr)(template.content, name.replace, limitedTo.attributes));
|
|
45
45
|
}
|
|
46
46
|
if (limitedTo.elements) {
|
|
47
|
-
relativeOffsets.push(...angular_1.findInputsOnElementWithTag(template.content, name.replace, limitedTo.elements));
|
|
47
|
+
relativeOffsets.push(...(0, angular_1.findInputsOnElementWithTag)(template.content, name.replace, limitedTo.elements));
|
|
48
48
|
}
|
|
49
|
-
relativeOffsets
|
|
49
|
+
relativeOffsets
|
|
50
|
+
.map(offset => template.start + offset)
|
|
50
51
|
.forEach(start => this._replaceInputName(template.filePath, start, name.replace.length, name.replaceWith));
|
|
51
52
|
});
|
|
52
53
|
}
|
|
53
54
|
_replaceInputName(filePath, start, width, newName) {
|
|
54
|
-
this.fileSystem.edit(filePath)
|
|
55
|
-
.remove(start, width)
|
|
56
|
-
.insertRight(start, newName);
|
|
55
|
+
this.fileSystem.edit(filePath).remove(start, width).insertRight(start, newName);
|
|
57
56
|
}
|
|
58
57
|
}
|
|
59
58
|
exports.InputNamesMigration = InputNamesMigration;
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvaW5wdXQtbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBR0gscURBQWdHO0FBRWhHLDJEQUFzRDtBQUd0RCxtREFBOEQ7QUFDOUQsa0RBQW1FO0FBRW5FOzs7Ozs7R0FNRztBQUNILE1BQWEsbUJBQW9CLFNBQVEscUJBQXNCO0lBQS9EOztRQUNFLGlFQUFpRTtRQUNqRSxTQUFJLEdBQTJCLElBQUEsb0NBQXFCLEVBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRXpFLDJEQUEyRDtRQUMzRCxZQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0lBcURuQyxDQUFDO0lBbkRVLGVBQWUsQ0FBQyxVQUE0QjtRQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixNQUFNLGVBQWUsR0FBRyxJQUFJLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQztZQUM1QyxNQUFNLGVBQWUsR0FBRyxJQUFJLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQztZQUVoRCxJQUFBLGlDQUF1QixFQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDO2lCQUN6RCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDeEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQ2YsSUFBSSxDQUFDLGlCQUFpQixDQUNwQixVQUFVLENBQUMsUUFBUSxFQUNuQixLQUFLLEVBQ0wsZUFBZSxDQUFDLE1BQU0sRUFDdEIsZUFBZSxDQUNoQixDQUNGLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxhQUFhLENBQUMsUUFBMEI7UUFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDdkIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNqQyxNQUFNLGVBQWUsR0FBYSxFQUFFLENBQUM7WUFFckMsSUFBSSxTQUFTLENBQUMsVUFBVSxFQUFFO2dCQUN4QixlQUFlLENBQUMsSUFBSSxDQUNsQixHQUFHLElBQUEscUNBQTJCLEVBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FDckYsQ0FBQzthQUNIO1lBRUQsSUFBSSxTQUFTLENBQUMsUUFBUSxFQUFFO2dCQUN0QixlQUFlLENBQUMsSUFBSSxDQUNsQixHQUFHLElBQUEsb0NBQTBCLEVBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FDbEYsQ0FBQzthQUNIO1lBRUQsZUFBZTtpQkFDWixHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQ2YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FDeEYsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQixDQUN2QixRQUF1QixFQUN2QixLQUFhLEVBQ2IsS0FBYSxFQUNiLE9BQWU7UUFFZixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbEYsQ0FBQztDQUNGO0FBMURELGtEQTBEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge1dvcmtzcGFjZVBhdGh9IGZyb20gJy4uLy4uL3VwZGF0ZS10b29sL2ZpbGUtc3lzdGVtJztcbmltcG9ydCB7ZmluZElucHV0c09uRWxlbWVudFdpdGhBdHRyLCBmaW5kSW5wdXRzT25FbGVtZW50V2l0aFRhZ30gZnJvbSAnLi4vaHRtbC1wYXJzaW5nL2FuZ3VsYXInO1xuaW1wb3J0IHtSZXNvbHZlZFJlc291cmNlfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9jb21wb25lbnQtcmVzb3VyY2UtY29sbGVjdG9yJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuXG5pbXBvcnQge0lucHV0TmFtZVVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhJztcbmltcG9ydCB7ZmluZEFsbFN1YnN0cmluZ0luZGljZXN9IGZyb20gJy4uL3R5cGVzY3JpcHQvbGl0ZXJhbCc7XG5pbXBvcnQge2dldFZlcnNpb25VcGdyYWRlRGF0YSwgVXBncmFkZURhdGF9IGZyb20gJy4uL3VwZ3JhZGUtZGF0YSc7XG5cbi8qKlxuICogTWlncmF0aW9uIHRoYXQgd2Fsa3MgdGhyb3VnaCBldmVyeSB0ZW1wbGF0ZSBvciBzdHlsZXNoZWV0IGFuZCByZXBsYWNlcyBvdXRkYXRlZCBpbnB1dFxuICogbmFtZXMgdG8gdGhlIG5ldyBpbnB1dCBuYW1lLiBTZWxlY3RvcnMgaW4gc3R5bGVzaGVldHMgY291bGQgYWxzbyB0YXJnZXQgaW5wdXRcbiAqIGJpbmRpbmdzIGRlY2xhcmVkIGFzIHN0YXRpYyBhdHRyaWJ1dGUuIFNlZSBmb3IgZXhhbXBsZTpcbiAqXG4gKiBlLmcuIGA8bXktY29tcG9uZW50IGNvbG9yPVwicHJpbWFyeVwiPmAgYmVjb21lcyBgbXktY29tcG9uZW50W2NvbG9yXWBcbiAqL1xuZXhwb3J0IGNsYXNzIElucHV0TmFtZXNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogSW5wdXROYW1lVXBncmFkZURhdGFbXSA9IGdldFZlcnNpb25VcGdyYWRlRGF0YSh0aGlzLCAnaW5wdXROYW1lcycpO1xuXG4gIC8vIE9ubHkgZW5hYmxlIHRoZSBtaWdyYXRpb24gcnVsZSBpZiB0aGVyZSBpcyB1cGdyYWRlIGRhdGEuXG4gIGVuYWJsZWQgPSB0aGlzLmRhdGEubGVuZ3RoICE9PSAwO1xuXG4gIG92ZXJyaWRlIHZpc2l0U3R5bGVzaGVldChzdHlsZXNoZWV0OiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2gobmFtZSA9PiB7XG4gICAgICBjb25zdCBjdXJyZW50U2VsZWN0b3IgPSBgWyR7bmFtZS5yZXBsYWNlfV1gO1xuICAgICAgY29uc3QgdXBkYXRlZFNlbGVjdG9yID0gYFske25hbWUucmVwbGFjZVdpdGh9XWA7XG5cbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHN0eWxlc2hlZXQuY29udGVudCwgY3VycmVudFNlbGVjdG9yKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBzdHlsZXNoZWV0LnN0YXJ0ICsgb2Zmc2V0KVxuICAgICAgICAuZm9yRWFjaChzdGFydCA9PlxuICAgICAgICAgIHRoaXMuX3JlcGxhY2VJbnB1dE5hbWUoXG4gICAgICAgICAgICBzdHlsZXNoZWV0LmZpbGVQYXRoLFxuICAgICAgICAgICAgc3RhcnQsXG4gICAgICAgICAgICBjdXJyZW50U2VsZWN0b3IubGVuZ3RoLFxuICAgICAgICAgICAgdXBkYXRlZFNlbGVjdG9yLFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSB2aXNpdFRlbXBsYXRlKHRlbXBsYXRlOiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2gobmFtZSA9PiB7XG4gICAgICBjb25zdCBsaW1pdGVkVG8gPSBuYW1lLmxpbWl0ZWRUbztcbiAgICAgIGNvbnN0IHJlbGF0aXZlT2Zmc2V0czogbnVtYmVyW10gPSBbXTtcblxuICAgICAgaWYgKGxpbWl0ZWRUby5hdHRyaWJ1dGVzKSB7XG4gICAgICAgIHJlbGF0aXZlT2Zmc2V0cy5wdXNoKFxuICAgICAgICAgIC4uLmZpbmRJbnB1dHNPbkVsZW1lbnRXaXRoQXR0cih0ZW1wbGF0ZS5jb250ZW50LCBuYW1lLnJlcGxhY2UsIGxpbWl0ZWRUby5hdHRyaWJ1dGVzKSxcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGxpbWl0ZWRUby5lbGVtZW50cykge1xuICAgICAgICByZWxhdGl2ZU9mZnNldHMucHVzaChcbiAgICAgICAgICAuLi5maW5kSW5wdXRzT25FbGVtZW50V2l0aFRhZyh0ZW1wbGF0ZS5jb250ZW50LCBuYW1lLnJlcGxhY2UsIGxpbWl0ZWRUby5lbGVtZW50cyksXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHJlbGF0aXZlT2Zmc2V0c1xuICAgICAgICAubWFwKG9mZnNldCA9PiB0ZW1wbGF0ZS5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT5cbiAgICAgICAgICB0aGlzLl9yZXBsYWNlSW5wdXROYW1lKHRlbXBsYXRlLmZpbGVQYXRoLCBzdGFydCwgbmFtZS5yZXBsYWNlLmxlbmd0aCwgbmFtZS5yZXBsYWNlV2l0aCksXG4gICAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9yZXBsYWNlSW5wdXROYW1lKFxuICAgIGZpbGVQYXRoOiBXb3Jrc3BhY2VQYXRoLFxuICAgIHN0YXJ0OiBudW1iZXIsXG4gICAgd2lkdGg6IG51bWJlcixcbiAgICBuZXdOYW1lOiBzdHJpbmcsXG4gICkge1xuICAgIHRoaXMuZmlsZVN5c3RlbS5lZGl0KGZpbGVQYXRoKS5yZW1vdmUoc3RhcnQsIHdpZHRoKS5pbnNlcnRSaWdodChzdGFydCwgbmV3TmFtZSk7XG4gIH1cbn1cbiJdfQ==
|