@angular/cdk 14.0.0-next.4 → 14.0.0-next.7

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.
Files changed (229) hide show
  1. package/a11y/live-announcer/live-announcer.d.ts +3 -1
  2. package/drag-drop/drag-events.d.ts +8 -0
  3. package/drag-drop/drag-ref.d.ts +11 -1
  4. package/drag-drop/drop-list-ref.d.ts +5 -1
  5. package/esm2020/a11y/a11y-module.mjs +5 -5
  6. package/esm2020/a11y/aria-describer/aria-describer.mjs +4 -4
  7. package/esm2020/a11y/focus-monitor/focus-monitor.mjs +7 -7
  8. package/esm2020/a11y/focus-trap/configurable-focus-trap-factory.mjs +4 -4
  9. package/esm2020/a11y/focus-trap/focus-trap-manager.mjs +4 -4
  10. package/esm2020/a11y/focus-trap/focus-trap.mjs +7 -7
  11. package/esm2020/a11y/high-contrast-mode/high-contrast-mode-detector.mjs +4 -4
  12. package/esm2020/a11y/input-modality/input-modality-detector.mjs +4 -4
  13. package/esm2020/a11y/interactivity-checker/interactivity-checker.mjs +4 -4
  14. package/esm2020/a11y/live-announcer/live-announcer.mjs +11 -8
  15. package/esm2020/accordion/accordion-item.mjs +4 -4
  16. package/esm2020/accordion/accordion-module.mjs +5 -5
  17. package/esm2020/accordion/accordion.mjs +4 -4
  18. package/esm2020/bidi/bidi-module.mjs +5 -5
  19. package/esm2020/bidi/dir.mjs +4 -4
  20. package/esm2020/bidi/directionality.mjs +4 -4
  21. package/esm2020/clipboard/clipboard-module.mjs +5 -5
  22. package/esm2020/clipboard/clipboard.mjs +4 -4
  23. package/esm2020/clipboard/copy-to-clipboard.mjs +4 -4
  24. package/esm2020/collections/unique-selection-dispatcher.mjs +4 -4
  25. package/esm2020/drag-drop/directives/drag-handle.mjs +4 -4
  26. package/esm2020/drag-drop/directives/drag-placeholder.mjs +4 -4
  27. package/esm2020/drag-drop/directives/drag-preview.mjs +4 -4
  28. package/esm2020/drag-drop/directives/drag.mjs +26 -24
  29. package/esm2020/drag-drop/directives/drop-list-group.mjs +4 -4
  30. package/esm2020/drag-drop/directives/drop-list.mjs +14 -13
  31. package/esm2020/drag-drop/drag-drop-module.mjs +5 -5
  32. package/esm2020/drag-drop/drag-drop-registry.mjs +4 -4
  33. package/esm2020/drag-drop/drag-drop.mjs +4 -4
  34. package/esm2020/drag-drop/drag-events.mjs +1 -1
  35. package/esm2020/drag-drop/drag-ref.mjs +42 -27
  36. package/esm2020/drag-drop/drop-list-ref.mjs +6 -2
  37. package/esm2020/layout/breakpoints-observer.mjs +4 -4
  38. package/esm2020/layout/layout-module.mjs +5 -5
  39. package/esm2020/layout/media-matcher.mjs +4 -4
  40. package/esm2020/observers/observe-content.mjs +14 -14
  41. package/esm2020/overlay/dispatchers/base-overlay-dispatcher.mjs +4 -4
  42. package/esm2020/overlay/dispatchers/overlay-keyboard-dispatcher.mjs +26 -8
  43. package/esm2020/overlay/dispatchers/overlay-outside-click-dispatcher.mjs +33 -12
  44. package/esm2020/overlay/fullscreen-overlay-container.mjs +4 -4
  45. package/esm2020/overlay/overlay-container.mjs +4 -4
  46. package/esm2020/overlay/overlay-directives.mjs +7 -7
  47. package/esm2020/overlay/overlay-module.mjs +5 -5
  48. package/esm2020/overlay/overlay-ref.mjs +14 -16
  49. package/esm2020/overlay/overlay.mjs +4 -4
  50. package/esm2020/overlay/position/global-position-strategy.mjs +64 -30
  51. package/esm2020/overlay/position/overlay-position-builder.mjs +4 -4
  52. package/esm2020/overlay/scroll/scroll-strategy-options.mjs +4 -4
  53. package/esm2020/platform/platform-module.mjs +5 -5
  54. package/esm2020/platform/platform.mjs +4 -4
  55. package/esm2020/portal/dom-portal-outlet.mjs +4 -2
  56. package/esm2020/portal/portal-directives.mjs +20 -18
  57. package/esm2020/portal/portal.mjs +12 -3
  58. package/esm2020/scrolling/fixed-size-virtual-scroll.mjs +4 -4
  59. package/esm2020/scrolling/scroll-dispatcher.mjs +4 -4
  60. package/esm2020/scrolling/scrollable.mjs +4 -4
  61. package/esm2020/scrolling/scrolling-module.mjs +9 -9
  62. package/esm2020/scrolling/viewport-ruler.mjs +4 -4
  63. package/esm2020/scrolling/virtual-for-of.mjs +4 -4
  64. package/esm2020/scrolling/virtual-scroll-viewport.mjs +4 -4
  65. package/esm2020/stepper/step-header.mjs +4 -4
  66. package/esm2020/stepper/step-label.mjs +4 -4
  67. package/esm2020/stepper/stepper-button.mjs +7 -7
  68. package/esm2020/stepper/stepper-module.mjs +5 -5
  69. package/esm2020/stepper/stepper.mjs +7 -7
  70. package/esm2020/table/cell.mjs +22 -22
  71. package/esm2020/table/coalesced-style-scheduler.mjs +4 -4
  72. package/esm2020/table/row.mjs +28 -28
  73. package/esm2020/table/table-module.mjs +5 -5
  74. package/esm2020/table/table.mjs +19 -19
  75. package/esm2020/table/text-column.mjs +4 -4
  76. package/esm2020/testing/harness-environment.mjs +4 -1
  77. package/esm2020/testing/public-api.mjs +2 -1
  78. package/esm2020/testing/selenium-webdriver/selenium-web-driver-element.mjs +8 -3
  79. package/esm2020/testing/test-element-errors.mjs +15 -0
  80. package/esm2020/testing/test-element.mjs +1 -1
  81. package/esm2020/testing/testbed/fake-events/type-in-element.mjs +12 -3
  82. package/esm2020/testing/testbed/unit-test-element.mjs +21 -5
  83. package/esm2020/text-field/autofill.mjs +7 -7
  84. package/esm2020/text-field/autosize.mjs +4 -4
  85. package/esm2020/text-field/text-field-module.mjs +5 -5
  86. package/esm2020/tree/nested-node.mjs +4 -4
  87. package/esm2020/tree/node.mjs +4 -4
  88. package/esm2020/tree/outlet.mjs +4 -4
  89. package/esm2020/tree/padding.mjs +4 -4
  90. package/esm2020/tree/toggle.mjs +4 -4
  91. package/esm2020/tree/tree-module.mjs +5 -5
  92. package/esm2020/tree/tree.mjs +7 -7
  93. package/esm2020/version.mjs +1 -1
  94. package/fesm2015/a11y.mjs +44 -41
  95. package/fesm2015/a11y.mjs.map +1 -1
  96. package/fesm2015/accordion.mjs +10 -10
  97. package/fesm2015/accordion.mjs.map +1 -1
  98. package/fesm2015/bidi.mjs +10 -10
  99. package/fesm2015/bidi.mjs.map +1 -1
  100. package/fesm2015/cdk.mjs +1 -1
  101. package/fesm2015/cdk.mjs.map +1 -1
  102. package/fesm2015/clipboard.mjs +10 -10
  103. package/fesm2015/clipboard.mjs.map +1 -1
  104. package/fesm2015/coercion.mjs.map +1 -1
  105. package/fesm2015/collections.mjs +3 -3
  106. package/fesm2015/collections.mjs.map +1 -1
  107. package/fesm2015/drag-drop.mjs +106 -84
  108. package/fesm2015/drag-drop.mjs.map +1 -1
  109. package/fesm2015/keycodes.mjs.map +1 -1
  110. package/fesm2015/layout.mjs +10 -10
  111. package/fesm2015/layout.mjs.map +1 -1
  112. package/fesm2015/observers.mjs +13 -13
  113. package/fesm2015/observers.mjs.map +1 -1
  114. package/fesm2015/overlay.mjs +162 -91
  115. package/fesm2015/overlay.mjs.map +1 -1
  116. package/fesm2015/platform.mjs +7 -7
  117. package/fesm2015/platform.mjs.map +1 -1
  118. package/fesm2015/portal.mjs +33 -20
  119. package/fesm2015/portal.mjs.map +1 -1
  120. package/fesm2015/scrolling.mjs +26 -26
  121. package/fesm2015/scrolling.mjs.map +1 -1
  122. package/fesm2015/stepper.mjs +22 -22
  123. package/fesm2015/stepper.mjs.map +1 -1
  124. package/fesm2015/table.mjs +76 -76
  125. package/fesm2015/table.mjs.map +1 -1
  126. package/fesm2015/testing/selenium-webdriver.mjs +7 -2
  127. package/fesm2015/testing/selenium-webdriver.mjs.map +1 -1
  128. package/fesm2015/testing/testbed.mjs +31 -7
  129. package/fesm2015/testing/testbed.mjs.map +1 -1
  130. package/fesm2015/testing.mjs +19 -1
  131. package/fesm2015/testing.mjs.map +1 -1
  132. package/fesm2015/text-field.mjs +13 -13
  133. package/fesm2015/text-field.mjs.map +1 -1
  134. package/fesm2015/tree.mjs +25 -25
  135. package/fesm2015/tree.mjs.map +1 -1
  136. package/fesm2020/a11y.mjs +44 -41
  137. package/fesm2020/a11y.mjs.map +1 -1
  138. package/fesm2020/accordion.mjs +10 -10
  139. package/fesm2020/accordion.mjs.map +1 -1
  140. package/fesm2020/bidi.mjs +10 -10
  141. package/fesm2020/bidi.mjs.map +1 -1
  142. package/fesm2020/cdk.mjs +1 -1
  143. package/fesm2020/cdk.mjs.map +1 -1
  144. package/fesm2020/clipboard.mjs +10 -10
  145. package/fesm2020/clipboard.mjs.map +1 -1
  146. package/fesm2020/coercion.mjs.map +1 -1
  147. package/fesm2020/collections.mjs +3 -3
  148. package/fesm2020/collections.mjs.map +1 -1
  149. package/fesm2020/drag-drop.mjs +106 -84
  150. package/fesm2020/drag-drop.mjs.map +1 -1
  151. package/fesm2020/keycodes.mjs.map +1 -1
  152. package/fesm2020/layout.mjs +10 -10
  153. package/fesm2020/layout.mjs.map +1 -1
  154. package/fesm2020/observers.mjs +13 -13
  155. package/fesm2020/observers.mjs.map +1 -1
  156. package/fesm2020/overlay.mjs +162 -91
  157. package/fesm2020/overlay.mjs.map +1 -1
  158. package/fesm2020/platform.mjs +7 -7
  159. package/fesm2020/platform.mjs.map +1 -1
  160. package/fesm2020/portal.mjs +33 -20
  161. package/fesm2020/portal.mjs.map +1 -1
  162. package/fesm2020/scrolling.mjs +26 -26
  163. package/fesm2020/scrolling.mjs.map +1 -1
  164. package/fesm2020/stepper.mjs +22 -22
  165. package/fesm2020/stepper.mjs.map +1 -1
  166. package/fesm2020/table.mjs +76 -76
  167. package/fesm2020/table.mjs.map +1 -1
  168. package/fesm2020/testing/selenium-webdriver.mjs +7 -2
  169. package/fesm2020/testing/selenium-webdriver.mjs.map +1 -1
  170. package/fesm2020/testing/testbed.mjs +31 -7
  171. package/fesm2020/testing/testbed.mjs.map +1 -1
  172. package/fesm2020/testing.mjs +19 -1
  173. package/fesm2020/testing.mjs.map +1 -1
  174. package/fesm2020/text-field.mjs +13 -13
  175. package/fesm2020/text-field.mjs.map +1 -1
  176. package/fesm2020/tree.mjs +25 -25
  177. package/fesm2020/tree.mjs.map +1 -1
  178. package/overlay/_index.scss +7 -1
  179. package/overlay/dispatchers/overlay-keyboard-dispatcher.d.ts +7 -2
  180. package/overlay/dispatchers/overlay-outside-click-dispatcher.d.ts +8 -2
  181. package/overlay/overlay-ref.d.ts +2 -0
  182. package/overlay/position/global-position-strategy.d.ts +14 -3
  183. package/overlay-prebuilt.css +1 -1
  184. package/package.json +3 -3
  185. package/portal/dom-portal-outlet.d.ts +2 -2
  186. package/portal/portal.d.ts +12 -2
  187. package/schematics/index.js +6 -2
  188. package/schematics/index.mjs +6 -2
  189. package/schematics/migration.json +5 -0
  190. package/schematics/ng-add/index.js +1 -1
  191. package/schematics/ng-add/index.mjs +1 -1
  192. package/schematics/ng-generate/drag-drop/index.js +5 -14
  193. package/schematics/ng-generate/drag-drop/index.mjs +5 -14
  194. package/schematics/ng-update/data/index.js +6 -2
  195. package/schematics/ng-update/data/index.mjs +6 -2
  196. package/schematics/ng-update/devkit-migration-rule.js +5 -14
  197. package/schematics/ng-update/devkit-migration-rule.mjs +5 -14
  198. package/schematics/ng-update/html-parsing/elements.js +2 -3
  199. package/schematics/ng-update/html-parsing/elements.mjs +2 -3
  200. package/schematics/ng-update/index.d.ts +2 -0
  201. package/schematics/ng-update/index.js +7 -2
  202. package/schematics/ng-update/index.mjs +7 -2
  203. package/schematics/ng-update/migrations/symbol-removal.js +2 -3
  204. package/schematics/ng-update/migrations/symbol-removal.mjs +2 -3
  205. package/schematics/ng-update/public-api.js +6 -2
  206. package/schematics/ng-update/public-api.mjs +6 -2
  207. package/schematics/update-tool/public-api.js +6 -2
  208. package/schematics/update-tool/public-api.mjs +6 -2
  209. package/schematics/update-tool/target-version.d.ts +2 -1
  210. package/schematics/update-tool/target-version.js +2 -1
  211. package/schematics/update-tool/target-version.mjs +2 -1
  212. package/schematics/utils/ast.js +11 -22
  213. package/schematics/utils/ast.mjs +11 -22
  214. package/schematics/utils/build-component.js +10 -15
  215. package/schematics/utils/build-component.mjs +10 -15
  216. package/schematics/utils/index.js +6 -2
  217. package/schematics/utils/index.mjs +6 -2
  218. package/schematics/utils/project-index-file.js +2 -2
  219. package/schematics/utils/project-index-file.mjs +2 -2
  220. package/schematics/utils/project-targets.js +3 -4
  221. package/schematics/utils/project-targets.mjs +3 -4
  222. package/schematics/utils/project-tsconfig-paths.js +16 -28
  223. package/schematics/utils/project-tsconfig-paths.mjs +16 -28
  224. package/table/text-column.d.ts +1 -1
  225. package/testing/public-api.d.ts +1 -0
  226. package/testing/test-element-errors.d.ts +12 -0
  227. package/testing/test-element.d.ts +4 -2
  228. package/testing/testbed/fake-events/type-in-element.d.ts +2 -2
  229. package/testing/testbed/unit-test-element.d.ts +4 -1
@@ -96,12 +96,18 @@ $backdrop-animation-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1) !default;
96
96
  }
97
97
 
98
98
  .cdk-overlay-transparent-backdrop {
99
+ // Define a transition on the visibility so that the `transitionend` event can fire immediately.
100
+ transition: visibility 1ms linear, opacity 1ms linear;
101
+ visibility: hidden;
102
+ opacity: 1;
103
+
99
104
  // Note: as of Firefox 57, having the backdrop be `background: none` will prevent it from
100
105
  // capturing the user's mouse scroll events. Since we also can't use something like
101
106
  // `rgba(0, 0, 0, 0)`, we work around the inconsistency by not setting the background at
102
107
  // all and using `opacity` to make the element transparent.
103
- &, &.cdk-overlay-backdrop-showing {
108
+ &.cdk-overlay-backdrop-showing {
104
109
  opacity: 0;
110
+ visibility: visible;
105
111
  }
106
112
  }
107
113
 
@@ -1,3 +1,4 @@
1
+ import { NgZone } from '@angular/core';
1
2
  import { OverlayReference } from '../overlay-reference';
2
3
  import { BaseOverlayDispatcher } from './base-overlay-dispatcher';
3
4
  import * as i0 from "@angular/core";
@@ -7,13 +8,17 @@ import * as i0 from "@angular/core";
7
8
  * on event target and order of overlay opens.
8
9
  */
9
10
  export declare class OverlayKeyboardDispatcher extends BaseOverlayDispatcher {
10
- constructor(document: any);
11
+ /** @breaking-change 14.0.0 _ngZone will be required. */
12
+ private _ngZone?;
13
+ constructor(document: any,
14
+ /** @breaking-change 14.0.0 _ngZone will be required. */
15
+ _ngZone?: NgZone | undefined);
11
16
  /** Add a new overlay to the list of attached overlay refs. */
12
17
  add(overlayRef: OverlayReference): void;
13
18
  /** Detaches the global keyboard event listener. */
14
19
  protected detach(): void;
15
20
  /** Keyboard event listener that will be attached to the body. */
16
21
  private _keydownListener;
17
- static ɵfac: i0.ɵɵFactoryDeclaration<OverlayKeyboardDispatcher, never>;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<OverlayKeyboardDispatcher, [null, { optional: true; }]>;
18
23
  static ɵprov: i0.ɵɵInjectableDeclaration<OverlayKeyboardDispatcher>;
19
24
  }
@@ -1,3 +1,4 @@
1
+ import { NgZone } from '@angular/core';
1
2
  import { OverlayReference } from '../overlay-reference';
2
3
  import { Platform } from '@angular/cdk/platform';
3
4
  import { BaseOverlayDispatcher } from './base-overlay-dispatcher';
@@ -9,18 +10,23 @@ import * as i0 from "@angular/core";
9
10
  */
10
11
  export declare class OverlayOutsideClickDispatcher extends BaseOverlayDispatcher {
11
12
  private _platform;
13
+ /** @breaking-change 14.0.0 _ngZone will be required. */
14
+ private _ngZone?;
12
15
  private _cursorOriginalValue;
13
16
  private _cursorStyleIsSet;
14
17
  private _pointerDownEventTarget;
15
- constructor(document: any, _platform: Platform);
18
+ constructor(document: any, _platform: Platform,
19
+ /** @breaking-change 14.0.0 _ngZone will be required. */
20
+ _ngZone?: NgZone | undefined);
16
21
  /** Add a new overlay to the list of attached overlay refs. */
17
22
  add(overlayRef: OverlayReference): void;
18
23
  /** Detaches the global keyboard event listener. */
19
24
  protected detach(): void;
25
+ private _addEventListeners;
20
26
  /** Store pointerdown event target to track origin of click. */
21
27
  private _pointerDownListener;
22
28
  /** Click event listener that will be attached to the body propagate phase. */
23
29
  private _clickListener;
24
- static ɵfac: i0.ɵɵFactoryDeclaration<OverlayOutsideClickDispatcher, never>;
30
+ static ɵfac: i0.ɵɵFactoryDeclaration<OverlayOutsideClickDispatcher, [null, null, { optional: true; }]>;
25
31
  static ɵprov: i0.ɵɵInjectableDeclaration<OverlayOutsideClickDispatcher>;
26
32
  }
@@ -35,6 +35,7 @@ export declare class OverlayRef implements PortalOutlet, OverlayReference {
35
35
  private _location;
36
36
  private _outsideClickDispatcher;
37
37
  private _backdropElement;
38
+ private _backdropTimeout;
38
39
  private readonly _backdropClick;
39
40
  private readonly _attachments;
40
41
  private readonly _detachments;
@@ -42,6 +43,7 @@ export declare class OverlayRef implements PortalOutlet, OverlayReference {
42
43
  private _scrollStrategy;
43
44
  private _locationChanges;
44
45
  private _backdropClickHandler;
46
+ private _backdropTransitionendHandler;
45
47
  /**
46
48
  * Reference to the parent of the `_host` at the time it was detached. Used to restore
47
49
  * the `_host` to its original position in the DOM when it gets re-attached.
@@ -19,10 +19,9 @@ export declare class GlobalPositionStrategy implements PositionStrategy {
19
19
  private _cssPosition;
20
20
  private _topOffset;
21
21
  private _bottomOffset;
22
- private _leftOffset;
23
- private _rightOffset;
24
22
  private _alignItems;
25
- private _justifyContent;
23
+ private _xPosition;
24
+ private _xOffset;
26
25
  private _width;
27
26
  private _height;
28
27
  private _isDisposed;
@@ -47,6 +46,18 @@ export declare class GlobalPositionStrategy implements PositionStrategy {
47
46
  * @param value New right offset.
48
47
  */
49
48
  right(value?: string): this;
49
+ /**
50
+ * Sets the overlay to the start of the viewport, depending on the overlay direction.
51
+ * This will be to the left in LTR layouts and to the right in RTL.
52
+ * @param offset Offset from the edge of the screen.
53
+ */
54
+ start(value?: string): this;
55
+ /**
56
+ * Sets the overlay to the end of the viewport, depending on the overlay direction.
57
+ * This will be to the right in LTR layouts and to the left in RTL.
58
+ * @param offset Offset from the edge of the screen.
59
+ */
60
+ end(value?: string): this;
50
61
  /**
51
62
  * Sets the overlay width and clears any previously set width.
52
63
  * @param value New width for the overlay
@@ -1 +1 @@
1
- .cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop,.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}
1
+ .cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/cdk",
3
- "version": "14.0.0-next.4",
3
+ "version": "14.0.0-next.7",
4
4
  "description": "Angular Material Component Development Kit",
5
5
  "repository": {
6
6
  "type": "git",
@@ -222,8 +222,8 @@
222
222
  }
223
223
  },
224
224
  "peerDependencies": {
225
- "@angular/core": "^13.0.0 || ^14.0.0",
226
- "@angular/common": "^13.0.0 || ^14.0.0",
225
+ "@angular/core": "^14.0.0-0 || ^15.0.0",
226
+ "@angular/common": "^14.0.0-0 || ^15.0.0",
227
227
  "rxjs": "^6.5.3 || ^7.4.0"
228
228
  },
229
229
  "dependencies": {
@@ -5,8 +5,8 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- import { ComponentFactoryResolver, ComponentRef, EmbeddedViewRef, ApplicationRef, Injector } from '@angular/core';
9
- import { BasePortalOutlet, ComponentPortal, TemplatePortal, DomPortal } from './portal';
8
+ import { ApplicationRef, ComponentFactoryResolver, ComponentRef, EmbeddedViewRef, Injector } from '@angular/core';
9
+ import { BasePortalOutlet, ComponentPortal, DomPortal, TemplatePortal } from './portal';
10
10
  /**
11
11
  * A PortalOutlet for attaching portals to an arbitrary DOM element outside of the Angular
12
12
  * application context.
@@ -58,8 +58,18 @@ export declare class TemplatePortal<C = any> extends Portal<EmbeddedViewRef<C>>
58
58
  /** Reference to the ViewContainer into which the template will be stamped out. */
59
59
  viewContainerRef: ViewContainerRef;
60
60
  /** Contextual data to be passed in to the embedded view. */
61
- context: C | undefined;
62
- constructor(template: TemplateRef<C>, viewContainerRef: ViewContainerRef, context?: C);
61
+ context?: C | undefined;
62
+ /** The injector to use for the embedded view. */
63
+ injector?: Injector | undefined;
64
+ constructor(
65
+ /** The embedded template that will be used to instantiate an embedded View in the host. */
66
+ templateRef: TemplateRef<C>,
67
+ /** Reference to the ViewContainer into which the template will be stamped out. */
68
+ viewContainerRef: ViewContainerRef,
69
+ /** Contextual data to be passed in to the embedded view. */
70
+ context?: C | undefined,
71
+ /** The injector to use for the embedded view. */
72
+ injector?: Injector | undefined);
63
73
  get origin(): ElementRef;
64
74
  /**
65
75
  * Attach the portal to the provided `PortalOutlet`.
@@ -8,7 +8,11 @@
8
8
  */
9
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
10
  if (k2 === undefined) k2 = k;
11
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
12
16
  }) : (function(o, m, k, k2) {
13
17
  if (k2 === undefined) k2 = k;
14
18
  o[k2] = m[k];
@@ -30,4 +34,4 @@ __exportStar(require("./utils/vendored-ast-utils"), exports);
30
34
  // in the CDK "package.json" as optional dependency.
31
35
  const parse5 = require("parse5");
32
36
  exports.parse5 = parse5;
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7OztBQUVILDBDQUF3QjtBQUN4Qix5REFBdUM7QUFDdkMsMkRBQXlDO0FBRXpDLHNFQUFzRTtBQUN0RSw0Q0FBNEM7QUFDNUMsNkRBQTJDO0FBRTNDLCtFQUErRTtBQUMvRSxnRkFBZ0Y7QUFDaEYsa0ZBQWtGO0FBQ2xGLG9EQUFvRDtBQUNwRCxpQ0FBaUM7QUFDekIsd0JBQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi91dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL25nLXVwZGF0ZS9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vdXBkYXRlLXRvb2wvcHVibGljLWFwaSc7XG5cbi8vIFJlLWV4cG9ydGVkIHNvIHRoYXQgQW5ndWxhciBNYXRlcmlhbCBzY2hlbWF0aWMgY29kZSBjYW4gY29uc3VtZSB0aGVcbi8vIHZlbmRvcmVkIFwiQHNjaGVtYXRpY3MvYW5ndWxhclwiIEFTVCB1dGlscy5cbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvdmVuZG9yZWQtYXN0LXV0aWxzJztcblxuLy8gUmUtZXhwb3J0IHBhcnNlNSBmcm9tIHRoZSBDREsuIE1hdGVyaWFsIHNjaGVtYXRpY3MgY29kZSBjYW5ub3Qgc2ltcGx5IGltcG9ydFxuLy8gXCJwYXJzZTVcIiBiZWNhdXNlIGl0IGNvdWxkIHJlc3VsdCBpbiBhIGRpZmZlcmVudCB2ZXJzaW9uLiBBcyBsb25nIGFzIHdlIGltcG9ydFxuLy8gaXQgZnJvbSB3aXRoaW4gdGhlIENESywgaXQgd2lsbCBhbHdheXMgYmUgdGhlIGNvcnJlY3QgdmVyc2lvbiB0aGF0IGlzIHNwZWNpZmllZFxuLy8gaW4gdGhlIENESyBcInBhY2thZ2UuanNvblwiIGFzIG9wdGlvbmFsIGRlcGVuZGVuY3kuXG5pbXBvcnQgKiBhcyBwYXJzZTUgZnJvbSAncGFyc2U1JztcbmV4cG9ydCB7cGFyc2U1fTtcbiJdfQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCwwQ0FBd0I7QUFDeEIseURBQXVDO0FBQ3ZDLDJEQUF5QztBQUV6QyxzRUFBc0U7QUFDdEUsNENBQTRDO0FBQzVDLDZEQUEyQztBQUUzQywrRUFBK0U7QUFDL0UsZ0ZBQWdGO0FBQ2hGLGtGQUFrRjtBQUNsRixvREFBb0Q7QUFDcEQsaUNBQWlDO0FBQ3pCLHdCQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9uZy11cGRhdGUvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL3VwZGF0ZS10b29sL3B1YmxpYy1hcGknO1xuXG4vLyBSZS1leHBvcnRlZCBzbyB0aGF0IEFuZ3VsYXIgTWF0ZXJpYWwgc2NoZW1hdGljIGNvZGUgY2FuIGNvbnN1bWUgdGhlXG4vLyB2ZW5kb3JlZCBcIkBzY2hlbWF0aWNzL2FuZ3VsYXJcIiBBU1QgdXRpbHMuXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL3ZlbmRvcmVkLWFzdC11dGlscyc7XG5cbi8vIFJlLWV4cG9ydCBwYXJzZTUgZnJvbSB0aGUgQ0RLLiBNYXRlcmlhbCBzY2hlbWF0aWNzIGNvZGUgY2Fubm90IHNpbXBseSBpbXBvcnRcbi8vIFwicGFyc2U1XCIgYmVjYXVzZSBpdCBjb3VsZCByZXN1bHQgaW4gYSBkaWZmZXJlbnQgdmVyc2lvbi4gQXMgbG9uZyBhcyB3ZSBpbXBvcnRcbi8vIGl0IGZyb20gd2l0aGluIHRoZSBDREssIGl0IHdpbGwgYWx3YXlzIGJlIHRoZSBjb3JyZWN0IHZlcnNpb24gdGhhdCBpcyBzcGVjaWZpZWRcbi8vIGluIHRoZSBDREsgXCJwYWNrYWdlLmpzb25cIiBhcyBvcHRpb25hbCBkZXBlbmRlbmN5LlxuaW1wb3J0ICogYXMgcGFyc2U1IGZyb20gJ3BhcnNlNSc7XG5leHBvcnQge3BhcnNlNX07XG4iXX0=
@@ -8,7 +8,11 @@
8
8
  */
9
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
10
  if (k2 === undefined) k2 = k;
11
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
12
16
  }) : (function(o, m, k, k2) {
13
17
  if (k2 === undefined) k2 = k;
14
18
  o[k2] = m[k];
@@ -30,4 +34,4 @@ __exportStar(require("./utils/vendored-ast-utils"), exports);
30
34
  // in the CDK "package.json" as optional dependency.
31
35
  const parse5 = require("parse5");
32
36
  exports.parse5 = parse5;
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7OztBQUVILDBDQUF3QjtBQUN4Qix5REFBdUM7QUFDdkMsMkRBQXlDO0FBRXpDLHNFQUFzRTtBQUN0RSw0Q0FBNEM7QUFDNUMsNkRBQTJDO0FBRTNDLCtFQUErRTtBQUMvRSxnRkFBZ0Y7QUFDaEYsa0ZBQWtGO0FBQ2xGLG9EQUFvRDtBQUNwRCxpQ0FBaUM7QUFDekIsd0JBQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi91dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL25nLXVwZGF0ZS9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vdXBkYXRlLXRvb2wvcHVibGljLWFwaSc7XG5cbi8vIFJlLWV4cG9ydGVkIHNvIHRoYXQgQW5ndWxhciBNYXRlcmlhbCBzY2hlbWF0aWMgY29kZSBjYW4gY29uc3VtZSB0aGVcbi8vIHZlbmRvcmVkIFwiQHNjaGVtYXRpY3MvYW5ndWxhclwiIEFTVCB1dGlscy5cbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvdmVuZG9yZWQtYXN0LXV0aWxzJztcblxuLy8gUmUtZXhwb3J0IHBhcnNlNSBmcm9tIHRoZSBDREsuIE1hdGVyaWFsIHNjaGVtYXRpY3MgY29kZSBjYW5ub3Qgc2ltcGx5IGltcG9ydFxuLy8gXCJwYXJzZTVcIiBiZWNhdXNlIGl0IGNvdWxkIHJlc3VsdCBpbiBhIGRpZmZlcmVudCB2ZXJzaW9uLiBBcyBsb25nIGFzIHdlIGltcG9ydFxuLy8gaXQgZnJvbSB3aXRoaW4gdGhlIENESywgaXQgd2lsbCBhbHdheXMgYmUgdGhlIGNvcnJlY3QgdmVyc2lvbiB0aGF0IGlzIHNwZWNpZmllZFxuLy8gaW4gdGhlIENESyBcInBhY2thZ2UuanNvblwiIGFzIG9wdGlvbmFsIGRlcGVuZGVuY3kuXG5pbXBvcnQgKiBhcyBwYXJzZTUgZnJvbSAncGFyc2U1JztcbmV4cG9ydCB7cGFyc2U1fTtcbiJdfQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCwwQ0FBd0I7QUFDeEIseURBQXVDO0FBQ3ZDLDJEQUF5QztBQUV6QyxzRUFBc0U7QUFDdEUsNENBQTRDO0FBQzVDLDZEQUEyQztBQUUzQywrRUFBK0U7QUFDL0UsZ0ZBQWdGO0FBQ2hGLGtGQUFrRjtBQUNsRixvREFBb0Q7QUFDcEQsaUNBQWlDO0FBQ3pCLHdCQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9uZy11cGRhdGUvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL3VwZGF0ZS10b29sL3B1YmxpYy1hcGknO1xuXG4vLyBSZS1leHBvcnRlZCBzbyB0aGF0IEFuZ3VsYXIgTWF0ZXJpYWwgc2NoZW1hdGljIGNvZGUgY2FuIGNvbnN1bWUgdGhlXG4vLyB2ZW5kb3JlZCBcIkBzY2hlbWF0aWNzL2FuZ3VsYXJcIiBBU1QgdXRpbHMuXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL3ZlbmRvcmVkLWFzdC11dGlscyc7XG5cbi8vIFJlLWV4cG9ydCBwYXJzZTUgZnJvbSB0aGUgQ0RLLiBNYXRlcmlhbCBzY2hlbWF0aWNzIGNvZGUgY2Fubm90IHNpbXBseSBpbXBvcnRcbi8vIFwicGFyc2U1XCIgYmVjYXVzZSBpdCBjb3VsZCByZXN1bHQgaW4gYSBkaWZmZXJlbnQgdmVyc2lvbi4gQXMgbG9uZyBhcyB3ZSBpbXBvcnRcbi8vIGl0IGZyb20gd2l0aGluIHRoZSBDREssIGl0IHdpbGwgYWx3YXlzIGJlIHRoZSBjb3JyZWN0IHZlcnNpb24gdGhhdCBpcyBzcGVjaWZpZWRcbi8vIGluIHRoZSBDREsgXCJwYWNrYWdlLmpzb25cIiBhcyBvcHRpb25hbCBkZXBlbmRlbmN5LlxuaW1wb3J0ICogYXMgcGFyc2U1IGZyb20gJ3BhcnNlNSc7XG5leHBvcnQge3BhcnNlNX07XG4iXX0=
@@ -41,6 +41,11 @@
41
41
  "description": "Updates the Angular CDK to v13",
42
42
  "factory": "./ng-update/index#updateToV13"
43
43
  },
44
+ "migration-v14": {
45
+ "version": "14.0.0-0",
46
+ "description": "Updates the Angular CDK to v14",
47
+ "factory": "./ng-update/index#updateToV14"
48
+ },
44
49
  "ng-post-update": {
45
50
  "description": "Prints out results after ng-update.",
46
51
  "factory": "./ng-update/index#postUpdate",
@@ -28,7 +28,7 @@ function default_1() {
28
28
  // In order to align the CDK version with other Angular dependencies that are setup by
29
29
  // `@schematics/angular`, we use tilde instead of caret. This is default for Angular
30
30
  // dependencies in new CLI projects.
31
- (0, package_config_1.addPackageToPackageJson)(host, '@angular/cdk', `~14.0.0-next.4`);
31
+ (0, package_config_1.addPackageToPackageJson)(host, '@angular/cdk', `~14.0.0-next.7`);
32
32
  // Add a task to run the package manager. This is necessary because we updated the
33
33
  // workspace "package.json" file and we want lock files to reflect the new version range.
34
34
  context.addTask(new tasks_1.NodePackageInstallTask());
@@ -28,7 +28,7 @@ function default_1() {
28
28
  // In order to align the CDK version with other Angular dependencies that are setup by
29
29
  // `@schematics/angular`, we use tilde instead of caret. This is default for Angular
30
30
  // dependencies in new CLI projects.
31
- (0, package_config_1.addPackageToPackageJson)(host, '@angular/cdk', `~14.0.0-next.4`);
31
+ (0, package_config_1.addPackageToPackageJson)(host, '@angular/cdk', `~14.0.0-next.7`);
32
32
  // Add a task to run the package manager. This is necessary because we updated the
33
33
  // workspace "package.json" file and we want lock files to reflect the new version range.
34
34
  context.addTask(new tasks_1.NodePackageInstallTask());
@@ -6,22 +6,13 @@
6
6
  * Use of this source code is governed by an MIT-style license that can be
7
7
  * found in the LICENSE file at https://angular.io/license
8
8
  */
9
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
10
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
11
- return new (P || (P = Promise))(function (resolve, reject) {
12
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
13
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
14
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
15
- step((generator = generator.apply(thisArg, _arguments || [])).next());
16
- });
17
- };
18
9
  Object.defineProperty(exports, "__esModule", { value: true });
19
10
  const schematics_1 = require("@angular-devkit/schematics");
20
11
  const utils_1 = require("../../utils");
21
12
  /** Scaffolds a new Angular component that uses the Drag and Drop module. */
22
13
  function default_1(options) {
23
14
  return (0, schematics_1.chain)([
24
- (0, utils_1.buildComponent)(Object.assign({}, options), {
15
+ (0, utils_1.buildComponent)({ ...options }, {
25
16
  template: './__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template',
26
17
  stylesheet: './__path__/__name@dasherize@if-flat__/__name@dasherize__.component.__style__.template',
27
18
  }),
@@ -31,9 +22,9 @@ function default_1(options) {
31
22
  exports.default = default_1;
32
23
  /** Adds the required modules to the main module of the CLI project. */
33
24
  function addDragDropModulesToModule(options) {
34
- return (host) => __awaiter(this, void 0, void 0, function* () {
35
- const modulePath = yield (0, utils_1.findModuleFromOptions)(host, options);
25
+ return async (host) => {
26
+ const modulePath = await (0, utils_1.findModuleFromOptions)(host, options);
36
27
  (0, utils_1.addModuleImportToModule)(host, modulePath, 'DragDropModule', '@angular/cdk/drag-drop');
37
- });
28
+ };
38
29
  }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctZ2VuZXJhdGUvZHJhZy1kcm9wL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7O0FBRUgsMkRBQW1FO0FBQ25FLHVDQUEyRjtBQUczRiw0RUFBNEU7QUFDNUUsbUJBQXlCLE9BQWU7SUFDdEMsT0FBTyxJQUFBLGtCQUFLLEVBQUM7UUFDWCxJQUFBLHNCQUFjLG9CQUNSLE9BQU8sR0FDWDtZQUNFLFFBQVEsRUFDTixrRkFBa0Y7WUFDcEYsVUFBVSxFQUNSLHVGQUF1RjtTQUMxRixDQUNGO1FBQ0QsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBQSxpQkFBSSxHQUFFLENBQUMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDLE9BQU8sQ0FBQztLQUNsRSxDQUFDLENBQUM7QUFDTCxDQUFDO0FBYkQsNEJBYUM7QUFFRCx1RUFBdUU7QUFDdkUsU0FBUywwQkFBMEIsQ0FBQyxPQUFlO0lBQ2pELE9BQU8sQ0FBTyxJQUFVLEVBQUUsRUFBRTtRQUMxQixNQUFNLFVBQVUsR0FBRyxNQUFNLElBQUEsNkJBQXFCLEVBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzlELElBQUEsK0JBQXVCLEVBQUMsSUFBSSxFQUFFLFVBQVcsRUFBRSxnQkFBZ0IsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO0lBQ3pGLENBQUMsQ0FBQSxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge2NoYWluLCBub29wLCBSdWxlLCBUcmVlfSBmcm9tICdAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcyc7XG5pbXBvcnQge2FkZE1vZHVsZUltcG9ydFRvTW9kdWxlLCBidWlsZENvbXBvbmVudCwgZmluZE1vZHVsZUZyb21PcHRpb25zfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQge1NjaGVtYX0gZnJvbSAnLi9zY2hlbWEnO1xuXG4vKiogU2NhZmZvbGRzIGEgbmV3IEFuZ3VsYXIgY29tcG9uZW50IHRoYXQgdXNlcyB0aGUgRHJhZyBhbmQgRHJvcCBtb2R1bGUuICovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiAob3B0aW9uczogU2NoZW1hKTogUnVsZSB7XG4gIHJldHVybiBjaGFpbihbXG4gICAgYnVpbGRDb21wb25lbnQoXG4gICAgICB7Li4ub3B0aW9uc30sXG4gICAgICB7XG4gICAgICAgIHRlbXBsYXRlOlxuICAgICAgICAgICcuL19fcGF0aF9fL19fbmFtZUBkYXNoZXJpemVAaWYtZmxhdF9fL19fbmFtZUBkYXNoZXJpemVfXy5jb21wb25lbnQuaHRtbC50ZW1wbGF0ZScsXG4gICAgICAgIHN0eWxlc2hlZXQ6XG4gICAgICAgICAgJy4vX19wYXRoX18vX19uYW1lQGRhc2hlcml6ZUBpZi1mbGF0X18vX19uYW1lQGRhc2hlcml6ZV9fLmNvbXBvbmVudC5fX3N0eWxlX18udGVtcGxhdGUnLFxuICAgICAgfSxcbiAgICApLFxuICAgIG9wdGlvbnMuc2tpcEltcG9ydCA/IG5vb3AoKSA6IGFkZERyYWdEcm9wTW9kdWxlc1RvTW9kdWxlKG9wdGlvbnMpLFxuICBdKTtcbn1cblxuLyoqIEFkZHMgdGhlIHJlcXVpcmVkIG1vZHVsZXMgdG8gdGhlIG1haW4gbW9kdWxlIG9mIHRoZSBDTEkgcHJvamVjdC4gKi9cbmZ1bmN0aW9uIGFkZERyYWdEcm9wTW9kdWxlc1RvTW9kdWxlKG9wdGlvbnM6IFNjaGVtYSkge1xuICByZXR1cm4gYXN5bmMgKGhvc3Q6IFRyZWUpID0+IHtcbiAgICBjb25zdCBtb2R1bGVQYXRoID0gYXdhaXQgZmluZE1vZHVsZUZyb21PcHRpb25zKGhvc3QsIG9wdGlvbnMpO1xuICAgIGFkZE1vZHVsZUltcG9ydFRvTW9kdWxlKGhvc3QsIG1vZHVsZVBhdGghLCAnRHJhZ0Ryb3BNb2R1bGUnLCAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCcpO1xuICB9O1xufVxuIl19
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctZ2VuZXJhdGUvZHJhZy1kcm9wL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7O0FBRUgsMkRBQW1FO0FBQ25FLHVDQUEyRjtBQUczRiw0RUFBNEU7QUFDNUUsbUJBQXlCLE9BQWU7SUFDdEMsT0FBTyxJQUFBLGtCQUFLLEVBQUM7UUFDWCxJQUFBLHNCQUFjLEVBQ1osRUFBQyxHQUFHLE9BQU8sRUFBQyxFQUNaO1lBQ0UsUUFBUSxFQUNOLGtGQUFrRjtZQUNwRixVQUFVLEVBQ1IsdUZBQXVGO1NBQzFGLENBQ0Y7UUFDRCxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFBLGlCQUFJLEdBQUUsQ0FBQyxDQUFDLENBQUMsMEJBQTBCLENBQUMsT0FBTyxDQUFDO0tBQ2xFLENBQUMsQ0FBQztBQUNMLENBQUM7QUFiRCw0QkFhQztBQUVELHVFQUF1RTtBQUN2RSxTQUFTLDBCQUEwQixDQUFDLE9BQWU7SUFDakQsT0FBTyxLQUFLLEVBQUUsSUFBVSxFQUFFLEVBQUU7UUFDMUIsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFBLDZCQUFxQixFQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM5RCxJQUFBLCtCQUF1QixFQUFDLElBQUksRUFBRSxVQUFXLEVBQUUsZ0JBQWdCLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztJQUN6RixDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7Y2hhaW4sIG5vb3AsIFJ1bGUsIFRyZWV9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzJztcbmltcG9ydCB7YWRkTW9kdWxlSW1wb3J0VG9Nb2R1bGUsIGJ1aWxkQ29tcG9uZW50LCBmaW5kTW9kdWxlRnJvbU9wdGlvbnN9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7U2NoZW1hfSBmcm9tICcuL3NjaGVtYSc7XG5cbi8qKiBTY2FmZm9sZHMgYSBuZXcgQW5ndWxhciBjb21wb25lbnQgdGhhdCB1c2VzIHRoZSBEcmFnIGFuZCBEcm9wIG1vZHVsZS4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIChvcHRpb25zOiBTY2hlbWEpOiBSdWxlIHtcbiAgcmV0dXJuIGNoYWluKFtcbiAgICBidWlsZENvbXBvbmVudChcbiAgICAgIHsuLi5vcHRpb25zfSxcbiAgICAgIHtcbiAgICAgICAgdGVtcGxhdGU6XG4gICAgICAgICAgJy4vX19wYXRoX18vX19uYW1lQGRhc2hlcml6ZUBpZi1mbGF0X18vX19uYW1lQGRhc2hlcml6ZV9fLmNvbXBvbmVudC5odG1sLnRlbXBsYXRlJyxcbiAgICAgICAgc3R5bGVzaGVldDpcbiAgICAgICAgICAnLi9fX3BhdGhfXy9fX25hbWVAZGFzaGVyaXplQGlmLWZsYXRfXy9fX25hbWVAZGFzaGVyaXplX18uY29tcG9uZW50Ll9fc3R5bGVfXy50ZW1wbGF0ZScsXG4gICAgICB9LFxuICAgICksXG4gICAgb3B0aW9ucy5za2lwSW1wb3J0ID8gbm9vcCgpIDogYWRkRHJhZ0Ryb3BNb2R1bGVzVG9Nb2R1bGUob3B0aW9ucyksXG4gIF0pO1xufVxuXG4vKiogQWRkcyB0aGUgcmVxdWlyZWQgbW9kdWxlcyB0byB0aGUgbWFpbiBtb2R1bGUgb2YgdGhlIENMSSBwcm9qZWN0LiAqL1xuZnVuY3Rpb24gYWRkRHJhZ0Ryb3BNb2R1bGVzVG9Nb2R1bGUob3B0aW9uczogU2NoZW1hKSB7XG4gIHJldHVybiBhc3luYyAoaG9zdDogVHJlZSkgPT4ge1xuICAgIGNvbnN0IG1vZHVsZVBhdGggPSBhd2FpdCBmaW5kTW9kdWxlRnJvbU9wdGlvbnMoaG9zdCwgb3B0aW9ucyk7XG4gICAgYWRkTW9kdWxlSW1wb3J0VG9Nb2R1bGUoaG9zdCwgbW9kdWxlUGF0aCEsICdEcmFnRHJvcE1vZHVsZScsICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJyk7XG4gIH07XG59XG4iXX0=
@@ -6,22 +6,13 @@
6
6
  * Use of this source code is governed by an MIT-style license that can be
7
7
  * found in the LICENSE file at https://angular.io/license
8
8
  */
9
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
10
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
11
- return new (P || (P = Promise))(function (resolve, reject) {
12
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
13
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
14
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
15
- step((generator = generator.apply(thisArg, _arguments || [])).next());
16
- });
17
- };
18
9
  Object.defineProperty(exports, "__esModule", { value: true });
19
10
  const schematics_1 = require("@angular-devkit/schematics");
20
11
  const utils_1 = require("../../utils");
21
12
  /** Scaffolds a new Angular component that uses the Drag and Drop module. */
22
13
  function default_1(options) {
23
14
  return (0, schematics_1.chain)([
24
- (0, utils_1.buildComponent)(Object.assign({}, options), {
15
+ (0, utils_1.buildComponent)({ ...options }, {
25
16
  template: './__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template',
26
17
  stylesheet: './__path__/__name@dasherize@if-flat__/__name@dasherize__.component.__style__.template',
27
18
  }),
@@ -31,9 +22,9 @@ function default_1(options) {
31
22
  exports.default = default_1;
32
23
  /** Adds the required modules to the main module of the CLI project. */
33
24
  function addDragDropModulesToModule(options) {
34
- return (host) => __awaiter(this, void 0, void 0, function* () {
35
- const modulePath = yield (0, utils_1.findModuleFromOptions)(host, options);
25
+ return async (host) => {
26
+ const modulePath = await (0, utils_1.findModuleFromOptions)(host, options);
36
27
  (0, utils_1.addModuleImportToModule)(host, modulePath, 'DragDropModule', '@angular/cdk/drag-drop');
37
- });
28
+ };
38
29
  }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctZ2VuZXJhdGUvZHJhZy1kcm9wL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7O0FBRUgsMkRBQW1FO0FBQ25FLHVDQUEyRjtBQUczRiw0RUFBNEU7QUFDNUUsbUJBQXlCLE9BQWU7SUFDdEMsT0FBTyxJQUFBLGtCQUFLLEVBQUM7UUFDWCxJQUFBLHNCQUFjLG9CQUNSLE9BQU8sR0FDWDtZQUNFLFFBQVEsRUFDTixrRkFBa0Y7WUFDcEYsVUFBVSxFQUNSLHVGQUF1RjtTQUMxRixDQUNGO1FBQ0QsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBQSxpQkFBSSxHQUFFLENBQUMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDLE9BQU8sQ0FBQztLQUNsRSxDQUFDLENBQUM7QUFDTCxDQUFDO0FBYkQsNEJBYUM7QUFFRCx1RUFBdUU7QUFDdkUsU0FBUywwQkFBMEIsQ0FBQyxPQUFlO0lBQ2pELE9BQU8sQ0FBTyxJQUFVLEVBQUUsRUFBRTtRQUMxQixNQUFNLFVBQVUsR0FBRyxNQUFNLElBQUEsNkJBQXFCLEVBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzlELElBQUEsK0JBQXVCLEVBQUMsSUFBSSxFQUFFLFVBQVcsRUFBRSxnQkFBZ0IsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO0lBQ3pGLENBQUMsQ0FBQSxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge2NoYWluLCBub29wLCBSdWxlLCBUcmVlfSBmcm9tICdAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcyc7XG5pbXBvcnQge2FkZE1vZHVsZUltcG9ydFRvTW9kdWxlLCBidWlsZENvbXBvbmVudCwgZmluZE1vZHVsZUZyb21PcHRpb25zfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQge1NjaGVtYX0gZnJvbSAnLi9zY2hlbWEnO1xuXG4vKiogU2NhZmZvbGRzIGEgbmV3IEFuZ3VsYXIgY29tcG9uZW50IHRoYXQgdXNlcyB0aGUgRHJhZyBhbmQgRHJvcCBtb2R1bGUuICovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiAob3B0aW9uczogU2NoZW1hKTogUnVsZSB7XG4gIHJldHVybiBjaGFpbihbXG4gICAgYnVpbGRDb21wb25lbnQoXG4gICAgICB7Li4ub3B0aW9uc30sXG4gICAgICB7XG4gICAgICAgIHRlbXBsYXRlOlxuICAgICAgICAgICcuL19fcGF0aF9fL19fbmFtZUBkYXNoZXJpemVAaWYtZmxhdF9fL19fbmFtZUBkYXNoZXJpemVfXy5jb21wb25lbnQuaHRtbC50ZW1wbGF0ZScsXG4gICAgICAgIHN0eWxlc2hlZXQ6XG4gICAgICAgICAgJy4vX19wYXRoX18vX19uYW1lQGRhc2hlcml6ZUBpZi1mbGF0X18vX19uYW1lQGRhc2hlcml6ZV9fLmNvbXBvbmVudC5fX3N0eWxlX18udGVtcGxhdGUnLFxuICAgICAgfSxcbiAgICApLFxuICAgIG9wdGlvbnMuc2tpcEltcG9ydCA/IG5vb3AoKSA6IGFkZERyYWdEcm9wTW9kdWxlc1RvTW9kdWxlKG9wdGlvbnMpLFxuICBdKTtcbn1cblxuLyoqIEFkZHMgdGhlIHJlcXVpcmVkIG1vZHVsZXMgdG8gdGhlIG1haW4gbW9kdWxlIG9mIHRoZSBDTEkgcHJvamVjdC4gKi9cbmZ1bmN0aW9uIGFkZERyYWdEcm9wTW9kdWxlc1RvTW9kdWxlKG9wdGlvbnM6IFNjaGVtYSkge1xuICByZXR1cm4gYXN5bmMgKGhvc3Q6IFRyZWUpID0+IHtcbiAgICBjb25zdCBtb2R1bGVQYXRoID0gYXdhaXQgZmluZE1vZHVsZUZyb21PcHRpb25zKGhvc3QsIG9wdGlvbnMpO1xuICAgIGFkZE1vZHVsZUltcG9ydFRvTW9kdWxlKGhvc3QsIG1vZHVsZVBhdGghLCAnRHJhZ0Ryb3BNb2R1bGUnLCAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCcpO1xuICB9O1xufVxuIl19
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctZ2VuZXJhdGUvZHJhZy1kcm9wL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7O0FBRUgsMkRBQW1FO0FBQ25FLHVDQUEyRjtBQUczRiw0RUFBNEU7QUFDNUUsbUJBQXlCLE9BQWU7SUFDdEMsT0FBTyxJQUFBLGtCQUFLLEVBQUM7UUFDWCxJQUFBLHNCQUFjLEVBQ1osRUFBQyxHQUFHLE9BQU8sRUFBQyxFQUNaO1lBQ0UsUUFBUSxFQUNOLGtGQUFrRjtZQUNwRixVQUFVLEVBQ1IsdUZBQXVGO1NBQzFGLENBQ0Y7UUFDRCxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFBLGlCQUFJLEdBQUUsQ0FBQyxDQUFDLENBQUMsMEJBQTBCLENBQUMsT0FBTyxDQUFDO0tBQ2xFLENBQUMsQ0FBQztBQUNMLENBQUM7QUFiRCw0QkFhQztBQUVELHVFQUF1RTtBQUN2RSxTQUFTLDBCQUEwQixDQUFDLE9BQWU7SUFDakQsT0FBTyxLQUFLLEVBQUUsSUFBVSxFQUFFLEVBQUU7UUFDMUIsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFBLDZCQUFxQixFQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM5RCxJQUFBLCtCQUF1QixFQUFDLElBQUksRUFBRSxVQUFXLEVBQUUsZ0JBQWdCLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztJQUN6RixDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7Y2hhaW4sIG5vb3AsIFJ1bGUsIFRyZWV9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzJztcbmltcG9ydCB7YWRkTW9kdWxlSW1wb3J0VG9Nb2R1bGUsIGJ1aWxkQ29tcG9uZW50LCBmaW5kTW9kdWxlRnJvbU9wdGlvbnN9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7U2NoZW1hfSBmcm9tICcuL3NjaGVtYSc7XG5cbi8qKiBTY2FmZm9sZHMgYSBuZXcgQW5ndWxhciBjb21wb25lbnQgdGhhdCB1c2VzIHRoZSBEcmFnIGFuZCBEcm9wIG1vZHVsZS4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIChvcHRpb25zOiBTY2hlbWEpOiBSdWxlIHtcbiAgcmV0dXJuIGNoYWluKFtcbiAgICBidWlsZENvbXBvbmVudChcbiAgICAgIHsuLi5vcHRpb25zfSxcbiAgICAgIHtcbiAgICAgICAgdGVtcGxhdGU6XG4gICAgICAgICAgJy4vX19wYXRoX18vX19uYW1lQGRhc2hlcml6ZUBpZi1mbGF0X18vX19uYW1lQGRhc2hlcml6ZV9fLmNvbXBvbmVudC5odG1sLnRlbXBsYXRlJyxcbiAgICAgICAgc3R5bGVzaGVldDpcbiAgICAgICAgICAnLi9fX3BhdGhfXy9fX25hbWVAZGFzaGVyaXplQGlmLWZsYXRfXy9fX25hbWVAZGFzaGVyaXplX18uY29tcG9uZW50Ll9fc3R5bGVfXy50ZW1wbGF0ZScsXG4gICAgICB9LFxuICAgICksXG4gICAgb3B0aW9ucy5za2lwSW1wb3J0ID8gbm9vcCgpIDogYWRkRHJhZ0Ryb3BNb2R1bGVzVG9Nb2R1bGUob3B0aW9ucyksXG4gIF0pO1xufVxuXG4vKiogQWRkcyB0aGUgcmVxdWlyZWQgbW9kdWxlcyB0byB0aGUgbWFpbiBtb2R1bGUgb2YgdGhlIENMSSBwcm9qZWN0LiAqL1xuZnVuY3Rpb24gYWRkRHJhZ0Ryb3BNb2R1bGVzVG9Nb2R1bGUob3B0aW9uczogU2NoZW1hKSB7XG4gIHJldHVybiBhc3luYyAoaG9zdDogVHJlZSkgPT4ge1xuICAgIGNvbnN0IG1vZHVsZVBhdGggPSBhd2FpdCBmaW5kTW9kdWxlRnJvbU9wdGlvbnMoaG9zdCwgb3B0aW9ucyk7XG4gICAgYWRkTW9kdWxlSW1wb3J0VG9Nb2R1bGUoaG9zdCwgbW9kdWxlUGF0aCEsICdEcmFnRHJvcE1vZHVsZScsICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJyk7XG4gIH07XG59XG4iXX0=
@@ -8,7 +8,11 @@
8
8
  */
9
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
10
  if (k2 === undefined) k2 = k;
11
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
12
16
  }) : (function(o, m, k, k2) {
13
17
  if (k2 === undefined) k2 = k;
14
18
  o[k2] = m[k];
@@ -27,4 +31,4 @@ __exportStar(require("./method-call-checks"), exports);
27
31
  __exportStar(require("./output-names"), exports);
28
32
  __exportStar(require("./property-names"), exports);
29
33
  __exportStar(require("./symbol-removal"), exports);
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL2RhdGEvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0FBRUgsd0RBQXNDO0FBQ3RDLGdEQUE4QjtBQUM5Qix1REFBcUM7QUFDckMsa0RBQWdDO0FBQ2hDLHNEQUFvQztBQUNwQyxnREFBOEI7QUFDOUIsdURBQXFDO0FBQ3JDLGlEQUErQjtBQUMvQixtREFBaUM7QUFDakMsbURBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vYXR0cmlidXRlLXNlbGVjdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2NsYXNzLW5hbWVzJztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RydWN0b3ItY2hlY2tzJztcbmV4cG9ydCAqIGZyb20gJy4vY3NzLXNlbGVjdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2VsZW1lbnQtc2VsZWN0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtbmFtZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXRob2QtY2FsbC1jaGVja3MnO1xuZXhwb3J0ICogZnJvbSAnLi9vdXRwdXQtbmFtZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9wZXJ0eS1uYW1lcyc7XG5leHBvcnQgKiBmcm9tICcuL3N5bWJvbC1yZW1vdmFsJztcbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL2RhdGEvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7OztBQUVILHdEQUFzQztBQUN0QyxnREFBOEI7QUFDOUIsdURBQXFDO0FBQ3JDLGtEQUFnQztBQUNoQyxzREFBb0M7QUFDcEMsZ0RBQThCO0FBQzlCLHVEQUFxQztBQUNyQyxpREFBK0I7QUFDL0IsbURBQWlDO0FBQ2pDLG1EQUFpQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2F0dHJpYnV0ZS1zZWxlY3RvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9jbGFzcy1uYW1lcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnN0cnVjdG9yLWNoZWNrcyc7XG5leHBvcnQgKiBmcm9tICcuL2Nzcy1zZWxlY3RvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGVtZW50LXNlbGVjdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2lucHV0LW5hbWVzJztcbmV4cG9ydCAqIGZyb20gJy4vbWV0aG9kLWNhbGwtY2hlY2tzJztcbmV4cG9ydCAqIGZyb20gJy4vb3V0cHV0LW5hbWVzJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvcGVydHktbmFtZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zeW1ib2wtcmVtb3ZhbCc7XG4iXX0=
@@ -8,7 +8,11 @@
8
8
  */
9
9
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
10
  if (k2 === undefined) k2 = k;
11
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
12
16
  }) : (function(o, m, k, k2) {
13
17
  if (k2 === undefined) k2 = k;
14
18
  o[k2] = m[k];
@@ -27,4 +31,4 @@ __exportStar(require("./method-call-checks"), exports);
27
31
  __exportStar(require("./output-names"), exports);
28
32
  __exportStar(require("./property-names"), exports);
29
33
  __exportStar(require("./symbol-removal"), exports);
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL2RhdGEvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0FBRUgsd0RBQXNDO0FBQ3RDLGdEQUE4QjtBQUM5Qix1REFBcUM7QUFDckMsa0RBQWdDO0FBQ2hDLHNEQUFvQztBQUNwQyxnREFBOEI7QUFDOUIsdURBQXFDO0FBQ3JDLGlEQUErQjtBQUMvQixtREFBaUM7QUFDakMsbURBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vYXR0cmlidXRlLXNlbGVjdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2NsYXNzLW5hbWVzJztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RydWN0b3ItY2hlY2tzJztcbmV4cG9ydCAqIGZyb20gJy4vY3NzLXNlbGVjdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2VsZW1lbnQtc2VsZWN0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtbmFtZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXRob2QtY2FsbC1jaGVja3MnO1xuZXhwb3J0ICogZnJvbSAnLi9vdXRwdXQtbmFtZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9wZXJ0eS1uYW1lcyc7XG5leHBvcnQgKiBmcm9tICcuL3N5bWJvbC1yZW1vdmFsJztcbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL2RhdGEvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7OztBQUVILHdEQUFzQztBQUN0QyxnREFBOEI7QUFDOUIsdURBQXFDO0FBQ3JDLGtEQUFnQztBQUNoQyxzREFBb0M7QUFDcEMsZ0RBQThCO0FBQzlCLHVEQUFxQztBQUNyQyxpREFBK0I7QUFDL0IsbURBQWlDO0FBQ2pDLG1EQUFpQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2F0dHJpYnV0ZS1zZWxlY3RvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9jbGFzcy1uYW1lcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnN0cnVjdG9yLWNoZWNrcyc7XG5leHBvcnQgKiBmcm9tICcuL2Nzcy1zZWxlY3RvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGVtZW50LXNlbGVjdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2lucHV0LW5hbWVzJztcbmV4cG9ydCAqIGZyb20gJy4vbWV0aG9kLWNhbGwtY2hlY2tzJztcbmV4cG9ydCAqIGZyb20gJy4vb3V0cHV0LW5hbWVzJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvcGVydHktbmFtZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zeW1ib2wtcmVtb3ZhbCc7XG4iXX0=
@@ -6,15 +6,6 @@
6
6
  * Use of this source code is governed by an MIT-style license that can be
7
7
  * found in the LICENSE file at https://angular.io/license
8
8
  */
9
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
10
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
11
- return new (P || (P = Promise))(function (resolve, reject) {
12
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
13
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
14
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
15
- step((generator = generator.apply(thisArg, _arguments || [])).next());
16
- });
17
- };
18
9
  Object.defineProperty(exports, "__esModule", { value: true });
19
10
  exports.isDevkitMigration = exports.createMigrationSchematicRule = exports.cdkMigrations = void 0;
20
11
  const tasks_1 = require("@angular-devkit/schematics/tasks");
@@ -55,9 +46,9 @@ exports.cdkMigrations = [
55
46
  * specified target version.
56
47
  */
57
48
  function createMigrationSchematicRule(targetVersion, extraMigrations, upgradeData, onMigrationCompleteFn) {
58
- return (tree, context) => __awaiter(this, void 0, void 0, function* () {
49
+ return async (tree, context) => {
59
50
  const logger = context.logger;
60
- const workspace = yield (0, project_tsconfig_paths_1.getWorkspaceConfigGracefully)(tree);
51
+ const workspace = await (0, project_tsconfig_paths_1.getWorkspaceConfigGracefully)(tree);
61
52
  if (workspace === null) {
62
53
  logger.error('Could not find workspace configuration file.');
63
54
  return;
@@ -75,7 +66,7 @@ function createMigrationSchematicRule(targetVersion, extraMigrations, upgradeDat
75
66
  const buildTsconfigPath = (0, project_tsconfig_paths_1.getTargetTsconfigPath)(project, 'build');
76
67
  const testTsconfigPath = (0, project_tsconfig_paths_1.getTargetTsconfigPath)(project, 'test');
77
68
  if (!buildTsconfigPath && !testTsconfigPath) {
78
- logger.warn(`Could not find TypeScript project for project: ${projectName}`);
69
+ logger.warn(`Skipping migration for project ${projectName}. Unable to determine 'tsconfig.json' file in workspace config.`);
79
70
  continue;
80
71
  }
81
72
  // In some applications, developers will have global stylesheets which are not
@@ -128,7 +119,7 @@ function createMigrationSchematicRule(targetVersion, extraMigrations, upgradeDat
128
119
  fileSystem.commitEdits();
129
120
  hasFailures = hasFailures || result.hasFailures;
130
121
  }
131
- });
122
+ };
132
123
  }
133
124
  exports.createMigrationSchematicRule = createMigrationSchematicRule;
134
125
  /** Whether the given migration type refers to a devkit migration */
@@ -136,4 +127,4 @@ function isDevkitMigration(value) {
136
127
  return devkit_migration_1.DevkitMigration.isPrototypeOf(value);
137
128
  }
138
129
  exports.isDevkitMigration = isDevkitMigration;
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2a2l0LW1pZ3JhdGlvbi1ydWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL25nLXVwZGF0ZS9kZXZraXQtbWlncmF0aW9uLXJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0FBR0gsNERBQXdFO0FBR3hFLGdEQUE2QztBQUk3Qyw0RUFBb0c7QUFFcEcsNkRBQXNEO0FBQ3RELHlEQUF1RjtBQUN2Rix5REFBdUQ7QUFDdkQsMEVBQTZFO0FBQzdFLHNFQUF5RTtBQUN6RSwwREFBNkQ7QUFDN0QsOEVBQWlGO0FBQ2pGLDhEQUFpRTtBQUNqRSxzRUFBeUU7QUFDekUsMERBQTZEO0FBQzdELDhFQUFnRjtBQUNoRiw4REFBaUU7QUFDakUsNERBQStEO0FBQy9ELGdFQUFtRTtBQUVuRSxnRUFBbUU7QUFFbkUsdURBQXVEO0FBQzFDLFFBQUEsYUFBYSxHQUFpQztJQUN6RCxpREFBMkI7SUFDM0IsNkNBQXlCO0lBQ3pCLGlDQUFtQjtJQUNuQixxREFBNkI7SUFDN0IscUNBQXFCO0lBQ3JCLDZDQUF5QjtJQUN6QixpQ0FBbUI7SUFDbkIsb0RBQTRCO0lBQzVCLHFDQUFxQjtJQUNyQixtQ0FBb0I7SUFDcEIsdUNBQXNCO0lBQ3RCLHVDQUFzQjtDQUN2QixDQUFDO0FBVUY7OztHQUdHO0FBQ0gsU0FBZ0IsNEJBQTRCLENBQzFDLGFBQTRCLEVBQzVCLGVBQTBDLEVBQzFDLFdBQXdCLEVBQ3hCLHFCQUF1QztJQUV2QyxPQUFPLENBQU8sSUFBVSxFQUFFLE9BQXlCLEVBQUUsRUFBRTtRQUNyRCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO1FBQzlCLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBQSxxREFBNEIsRUFBQyxJQUFJLENBQUMsQ0FBQztRQUUzRCxJQUFJLFNBQVMsS0FBSyxJQUFJLEVBQUU7WUFDdEIsTUFBTSxD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Q0FBQyxDQUFDO1lBQ2xGLE1BQU0sYUFBYSxHQUFrQjtnQkFDbkMsWUFBWTtnQkFDWixXQUFXO2dCQUNYLE9BQU87Z0JBQ1AsSUFBSTthQUNMLENBQUM7WUFFRixNQUFNLGFBQWEsR0FBRyxJQUFJLDJCQUFhLENBQ3JDLGFBQWEsRUFDYixPQUFPLEVBQ1AsVUFBVSxFQUNWLGFBQWEsRUFDYixPQUFPLENBQUMsTUFBTSxDQUNmLENBQUM7WUFFRixNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMsT0FBTyxDQUNsQyxVQUFVLEVBQ1YsYUFBYSxFQUNiLFdBQVcsRUFDWCx5QkFBeUIsQ0FDMUIsQ0FBQztZQUVGLGlGQUFpRjtZQUNqRiw4RUFBOEU7WUFDOUUsaUZBQWlGO1lBQ2pGLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUV6QixXQUFXLEdBQUcsV0FBVyxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEQsQ0FBQztJQUNILENBQUMsQ0FBQSxDQUFDO0FBQ0osQ0FBQztBQWhIRCxvRUFnSEM7QUFFRCxvRUFBb0U7QUFDcEUsU0FBZ0IsaUJBQWlCLENBQy9CLEtBQThCO0lBRTlCLE9BQU8sa0NBQWUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDOUMsQ0FBQztBQUpELDhDQUlDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7UnVsZSwgU2NoZW1hdGljQ29udGV4dCwgVHJlZX0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3MnO1xuaW1wb3J0IHtOb2RlUGFja2FnZUluc3RhbGxUYXNrfSBmcm9tICdAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy90YXNrcyc7XG5pbXBvcnQge1Byb2plY3REZWZpbml0aW9ufSBmcm9tICdAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlJztcblxuaW1wb3J0IHtVcGRhdGVQcm9qZWN0fSBmcm9tICcuLi91cGRhdGUtdG9vbCc7XG5pbXBvcnQge1dvcmtzcGFjZVBhdGh9IGZyb20gJy4uL3VwZGF0ZS10b29sL2ZpbGUtc3lzdGVtJztcbmltcG9ydCB7TWlncmF0aW9uQ3Rvcn0gZnJvbSAnLi4vdXBkYXRlLXRvb2wvbWlncmF0aW9uJztcbmltcG9ydCB7VGFyZ2V0VmVyc2lvbn0gZnJvbSAnLi4vdXBkYXRlLXRvb2wvdGFyZ2V0LXZlcnNpb24nO1xuaW1wb3J0IHtnZXRUYXJnZXRUc2NvbmZpZ1BhdGgsIGdldFdvcmtzcGFjZUNvbmZpZ0dyYWNlZnVsbHl9IGZyb20gJy4uL3V0aWxzL3Byb2plY3QtdHNjb25maWctcGF0aHMnO1xuXG5pbXBvcnQge0RldmtpdEZpbGVTeXN0ZW19IGZyb20gJy4vZGV2a2l0LWZpbGUtc3lzdGVtJztcbmltcG9ydCB7RGV2a2l0Q29udGV4dCwgRGV2a2l0TWlncmF0aW9uLCBEZXZraXRNaWdyYXRpb25DdG9yfSBmcm9tICcuL2RldmtpdC1taWdyYXRpb24nO1xuaW1wb3J0IHtmaW5kU3R5bGVzaGVldEZpbGVzfSBmcm9tICcuL2ZpbmQtc3R5bGVzaGVldHMnO1xuaW1wb3J0IHtBdHRyaWJ1dGVTZWxlY3RvcnNNaWdyYXRpb259IGZyb20gJy4vbWlncmF0aW9ucy9hdHRyaWJ1dGUtc2VsZWN0b3JzJztcbmltcG9ydCB7Q2xhc3NJbmhlcml0YW5jZU1pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL2NsYXNzLWluaGVyaXRhbmNlJztcbmltcG9ydCB7Q2xhc3NOYW1lc01pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL2NsYXNzLW5hbWVzJztcbmltcG9ydCB7Q29uc3RydWN0b3JTaWduYXR1cmVNaWdyYXRpb259IGZyb20gJy4vbWlncmF0aW9ucy9jb25zdHJ1Y3Rvci1zaWduYXR1cmUnO1xuaW1wb3J0IHtDc3NTZWxlY3RvcnNNaWdyYXRpb259IGZyb20gJy4vbWlncmF0aW9ucy9jc3Mtc2VsZWN0b3JzJztcbmltcG9ydCB7RWxlbWVudFNlbGVjdG9yc01pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL2VsZW1lbnQtc2VsZWN0b3JzJztcbmltcG9ydCB7SW5wdXROYW1lc01pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL2lucHV0LW5hbWVzJztcbmltcG9ydCB7TWV0aG9kQ2FsbEFyZ3VtZW50c01pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL21ldGhvZC1jYWxsLWFyZ3VtZW50cyc7XG5pbXBvcnQge01pc2NUZW1wbGF0ZU1pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL21pc2MtdGVtcGxhdGUnO1xuaW1wb3J0IHtPdXRwdXROYW1lc01pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL291dHB1dC1uYW1lcyc7XG5pbXBvcnQge1Byb3BlcnR5TmFtZXNNaWdyYXRpb259IGZyb20gJy4vbWlncmF0aW9ucy9wcm9wZXJ0eS1uYW1lcyc7XG5pbXBvcnQge1VwZ3JhZGVEYXRhfSBmcm9tICcuL3VwZ3JhZGUtZGF0YSc7XG5pbXBvcnQge1N5bWJvbFJlbW92YWxNaWdyYXRpb259IGZyb20gJy4vbWlncmF0aW9ucy9zeW1ib2wtcmVtb3ZhbCc7XG5cbi8qKiBMaXN0IG9mIG1pZ3JhdGlvbnMgd2hpY2ggcnVuIGZvciB0aGUgQ0RLIHVwZGF0ZS4gKi9cbmV4cG9ydCBjb25zdCBjZGtNaWdyYXRpb25zOiBNaWdyYXRpb25DdG9yPFVwZ3JhZGVEYXRhPltdID0gW1xuICBBdHRyaWJ1dGVTZWxlY3RvcnNNaWdyYXRpb24sXG4gIENsYXNzSW5oZXJpdGFuY2VNaWdyYXRpb24sXG4gIENsYXNzTmFtZXNNaWdyYXRpb24sXG4gIENvbnN0cnVjdG9yU2lnbmF0dXJlTWlncmF0aW9uLFxuICBDc3NTZWxlY3RvcnNNaWdyYXRpb24sXG4gIEVsZW1lbnRTZWxlY3RvcnNNaWdyYXRpb24sXG4gIElucHV0TmFtZXNNaWdyYXRpb24sXG4gIE1ldGhvZENhbGxBcmd1bWVudHNNaWdyYXRpb24sXG4gIE1pc2NUZW1wbGF0ZU1pZ3JhdGlvbixcbiAgT3V0cHV0TmFtZXNNaWdyYXRpb24sXG4gIFByb3BlcnR5TmFtZXNNaWdyYXRpb24sXG4gIFN5bWJvbFJlbW92YWxNaWdyYXRpb24sXG5dO1xuXG5leHBvcnQgdHlwZSBOdWxsYWJsZURldmtpdE1pZ3JhdGlvbiA9IE1pZ3JhdGlvbkN0b3I8VXBncmFkZURhdGEgfCBudWxsLCBEZXZraXRDb250ZXh0PjtcblxudHlwZSBQb3N0TWlncmF0aW9uRm4gPSAoXG4gIGNvbnRleHQ6IFNjaGVtYXRpY0NvbnRleHQsXG4gIHRhcmdldFZlcnNpb246IFRhcmdldFZlcnNpb24sXG4gIGhhc0ZhaWx1cmU6IGJvb2xlYW4sXG4pID0+IHZvaWQ7XG5cbi8qKlxuICogQ3JlYXRlcyBhIEFuZ3VsYXIgc2NoZW1hdGljIHJ1bGUgdGhhdCBydW5zIHRoZSB1cGdyYWRlIGZvciB0aGVcbiAqIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU1pZ3JhdGlvblNjaGVtYXRpY1J1bGUoXG4gIHRhcmdldFZlcnNpb246IFRhcmdldFZlcnNpb24sXG4gIGV4dHJhTWlncmF0aW9uczogTnVsbGFibGVEZXZraXRNaWdyYXRpb25bXSxcbiAgdXBncmFkZURhdGE6IFVwZ3JhZGVEYXRhLFxuICBvbk1pZ3JhdGlvbkNvbXBsZXRlRm4/OiBQb3N0TWlncmF0aW9uRm4sXG4pOiBSdWxlIHtcbiAgcmV0dXJuIGFzeW5jICh0cmVlOiBUcmVlLCBjb250ZXh0OiBTY2hlbWF0aWNDb250ZXh0KSA9PiB7XG4gICAgY29uc3QgbG9nZ2VyID0gY29udGV4dC5sb2dnZXI7XG4gICAgY29uc3Qgd29ya3NwYWNlID0gYXdhaXQgZ2V0V29ya3NwYWNlQ29uZmlnR3JhY2VmdWxseSh0cmVlKTtcblxuICAgIGlmICh3b3Jrc3BhY2UgPT09IG51bGwpIHtcbiAgICAgIGxvZ2dlci5lcnJvcignQ291bGQgbm90IGZpbmQgd29ya3NwYWNlIGNvbmZpZ3VyYXRpb24gZmlsZS4nKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBLZWVwIHRyYWNrIG9mIGFsbCBwcm9qZWN0IHNvdXJjZSBmaWxlcyB3aGljaCBoYXZlIGJlZW4gY2hlY2tlZC9taWdyYXRlZC4gVGhpcyBpc1xuICAgIC8vIG5lY2Vzc2FyeSBiZWNhdXNlIG11bHRpcGxlIFR5cGVTY3JpcHQgcHJvamVjdHMgY2FuIGNvbnRhaW4gdGhlIHNhbWUgc291cmNlIGZpbGUgYW5kXG4gICAgLy8gd2UgZG9uJ3Qgd2FudCB0byBjaGVjayB0aGVzZSBhZ2FpbiwgYXMgdGhpcyB3b3VsZCByZXN1bHQgaW4gZHVwbGljYXRlZCBmYWlsdXJlIG1lc3NhZ2VzLlxuICAgIGNvbnN0IGFuYWx5emVkRmlsZXMgPSBuZXcgU2V0PFdvcmtzcGFjZVBhdGg+KCk7XG4gICAgY29uc3QgZmlsZVN5c3RlbSA9IG5ldyBEZXZraXRGaWxlU3lzdGVtKHRyZWUpO1xuICAgIGNvbnN0IHByb2plY3ROYW1lcyA9IHdvcmtzcGFjZS5wcm9qZWN0cy5rZXlzKCk7XG4gICAgY29uc3QgbWlncmF0aW9ucyA9IFsuLi5jZGtNaWdyYXRpb25zLCAuLi5leHRyYU1pZ3JhdGlvbnNdIGFzIE51bGxhYmxlRGV2a2l0TWlncmF0aW9uW107XG4gICAgbGV0IGhhc0ZhaWx1cmVzID0gZmFsc2U7XG5cbiAgICBmb3IgKGNvbnN0IHByb2plY3ROYW1lIG9mIHByb2plY3ROYW1lcykge1xuICAgICAgY29uc3QgcHJvamVjdCA9IHdvcmtzcGFjZS5wcm9qZWN0cy5nZXQocHJvamVjdE5hbWUpITtcbiAgICAgIGNvbnN0IGJ1aWxkVHNjb25maWdQYXRoID0gZ2V0VGFyZ2V0VHNjb25maWdQYXRoKHByb2plY3QsICdidWlsZCcpO1xuICAgICAgY29uc3QgdGVzdFRzY29uZmlnUGF0aCA9IGdldFRhcmdldFRzY29uZmlnUGF0aChwcm9qZWN0LCAndGVzdCcpO1xuXG4gICAgICBpZiAoIWJ1aWxkVHNjb25maWdQYXRoICYmICF0ZXN0VHNjb25maWdQYXRoKSB7XG4gICAgICAgIGxvZ2dlci53YXJuKGBDb3VsZCBub3QgZmluZCBUeXBlU2NyaXB0IHByb2plY3QgZm9yIHByb2plY3Q6ICR7cHJvamVjdE5hbWV9YCk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBJbiBzb21lIGFwcGxpY2F0aW9ucywgZGV2ZWxvcGVycyB3aWxsIGhhdmUgZ2xvYmFsIHN0eWxlc2hlZXRzIHdoaWNoIGFyZSBub3RcbiAgICAgIC8vIHNwZWNpZmllZCBpbiBhbnkgQW5ndWxhciBjb21wb25lbnQuIFRoZXJlZm9yZSB3ZSBnbG9iIHVwIGFsbCBDU1MgYW5kIFNDU1MgZmlsZXNcbiAgICAgIC8vIGluIHRoZSBwcm9qZWN0IGFuZCBtaWdyYXRlIHRoZW0gaWYgbmVlZGVkLlxuICAgICAgLy8gVE9ETzogcmV3b3JrIHRoaXMgdG8gY29sbGVjdCBnbG9iYWwgc3R5bGVzaGVldHMgZnJvbSB0aGUgd29ya3NwYWNlIGNvbmZpZy4gQ09NUC0yODAuXG4gICAgICBjb25zdCBhZGRpdGlvbmFsU3R5bGVzaGVldFBhdGhzID0gZmluZFN0eWxlc2hlZXRGaWxlcyh0cmVlLCBwcm9qZWN0LnJvb3QpO1xuXG4gICAgICBpZiAoYnVpbGRUc2NvbmZpZ1BhdGggIT09IG51bGwpIHtcbiAgICAgICAgcnVuTWlncmF0aW9ucyhwcm9qZWN0LCBwcm9qZWN0TmFtZSwgYnVpbGRUc2NvbmZpZ1BhdGgsIGFkZGl0aW9uYWxTdHlsZXNoZWV0UGF0aHMsIGZhbHNlKTtcbiAgICAgIH1cbiAgICAgIGlmICh0ZXN0VHNjb25maWdQYXRoICE9PSBudWxsKSB7XG4gICAgICAgIHJ1bk1pZ3JhdGlvbnMocHJvamVjdCwgcHJvamVjdE5hbWUsIHRlc3RUc2NvbmZpZ1BhdGgsIGFkZGl0aW9uYWxTdHlsZXNoZWV0UGF0aHMsIHRydWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBydW5QYWNrYWdlTWFuYWdlciA9IGZhbHNlO1xuICAgIC8vIFJ1biB0aGUgZ2xvYmFsIHBvc3QgbWlncmF0aW9uIHN0YXRpYyBtZW1iZXJzIGZvciBhbGxcbiAgICAvLyByZWdpc3RlcmVkIGRldmtpdCBtaWdyYXRpb25zLlxuICAgIG1pZ3JhdGlvbnMuZm9yRWFjaChtID0+IHtcbiAgICAgIGNvbnN0IGFjdGlvblJlc3VsdCA9XG4gICAgICAgIGlzRGV2a2l0TWlncmF0aW9uKG0pICYmIG0uZ2xvYmFsUG9zdE1pZ3JhdGlvbiAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgPyBtLmdsb2JhbFBvc3RNaWdyYXRpb24odHJlZSwgdGFyZ2V0VmVyc2lvbiwgY29udGV4dClcbiAgICAgICAgICA6IG51bGw7XG4gICAgICBpZiAoYWN0aW9uUmVzdWx0KSB7XG4gICAgICAgIHJ1blBhY2thZ2VNYW5hZ2VyID0gcnVuUGFja2FnZU1hbmFnZXIgfHwgYWN0aW9uUmVzdWx0LnJ1blBhY2thZ2VNYW5hZ2VyO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gSWYgYSBtaWdyYXRpb24gcmVxdWVzdGVkIHRoZSBwYWNrYWdlIG1hbmFnZXIgdG8gcnVuLCB3ZSBydW4gaXQgYXMgYW5cbiAgICAvLyBhc3luY2hyb25vdXMgcG9zdCBtaWdyYXRpb24gdGFzay4gV2UgY2Fubm90IHJ1biBpdCBzeW5jaHJvbm91c2x5LFxuICAgIC8vIGFzIGZpbGUgY2hhbmdlcyBmcm9tIHRoZSBjdXJyZW50IG1pZ3JhdGlvbiB0YXNrIGFyZSBub3QgYXBwbGllZCB0b1xuICAgIC8vIHRoZSBmaWxlIHN5c3RlbSB5ZXQuXG4gICAgaWYgKHJ1blBhY2thZ2VNYW5hZ2VyKSB7XG4gICAgICBjb250ZXh0LmFkZFRhc2sobmV3IE5vZGVQYWNrYWdlSW5zdGFsbFRhc2soe3F1aWV0OiBmYWxzZX0pKTtcbiAgICB9XG5cbiAgICBpZiAob25NaWdyYXRpb25Db21wbGV0ZUZuKSB7XG4gICAgICBvbk1pZ3JhdGlvbkNvbXBsZXRlRm4oY29udGV4dCwgdGFyZ2V0VmVyc2lvbiwgaGFzRmFpbHVyZXMpO1xuICAgIH1cblxuICAgIC8qKiBSdW5zIHRoZSBtaWdyYXRpb25zIGZvciB0aGUgc3BlY2lmaWVkIHdvcmtzcGFjZSBwcm9qZWN0LiAqL1xuICAgIGZ1bmN0aW9uIHJ1bk1pZ3JhdGlvbnMoXG4gICAgICBwcm9qZWN0OiBQcm9qZWN0RGVmaW5pdGlvbixcbiAgICAgIHByb2plY3ROYW1lOiBzdHJpbmcsXG4gICAgICB0c2NvbmZpZ1BhdGg6IFdvcmtzcGFjZVBhdGgsXG4gICAgICBhZGRpdGlvbmFsU3R5bGVzaGVldFBhdGhzOiBzdHJpbmdbXSxcbiAgICAgIGlzVGVzdFRhcmdldDogYm9vbGVhbixcbiAgICApIHtcbiAgICAgIGNvbnN0IHByb2dyYW0gPSBVcGRhdGVQcm9qZWN0LmNyZWF0ZVByb2dyYW1Gcm9tVHNjb25maWcodHNjb25maWdQYXRoLCBmaWxlU3lzdGVtKTtcbiAgICAgIGNvbnN0IHVwZGF0ZUNvbnRleHQ6IERldmtpdENvbnRleHQgPSB7XG4gICAgICAgIGlzVGVzdFRhcmdldCxcbiAgICAgICAgcHJvamVjdE5hbWUsXG4gICAgICAgIHByb2plY3QsXG4gICAgICAgIHRyZWUsXG4gICAgICB9O1xuXG4gICAgICBjb25zdCB1cGRhdGVQcm9qZWN0ID0gbmV3IFVwZGF0ZVByb2plY3QoXG4gICAgICAgIHVwZGF0ZUNvbnRleHQsXG4gICAgICAgIHByb2dyYW0sXG4gICAgICAgIGZpbGVTeXN0ZW0sXG4gICAgICAgIGFuYWx5emVkRmlsZXMsXG4gICAgICAgIGNvbnRleHQubG9nZ2VyLFxuICAgICAgKTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gdXBkYXRlUHJvamVjdC5taWdyYXRlKFxuICAgICAgICBtaWdyYXRpb25zLFxuICAgICAgICB0YXJnZXRWZXJzaW9uLFxuICAgICAgICB1cGdyYWRlRGF0YSxcbiAgICAgICAgYWRkaXRpb25hbFN0eWxlc2hlZXRQYXRocyxcbiAgICAgICk7XG5cbiAgICAgIC8vIENvbW1pdCBhbGwgcmVjb3JkZWQgZWRpdHMgaW4gdGhlIHVwZGF0ZSByZWNvcmRlci4gV2UgYXBwbHkgdGhlIGVkaXRzIGFmdGVyIGFsbFxuICAgICAgLy8gbWlncmF0aW9ucyByYW4gYmVjYXVzZSBvdGhlcndpc2Ugb2Zmc2V0cyBpbiB0aGUgVHlwZVNjcmlwdCBwcm9ncmFtIHdvdWxkIGJlXG4gICAgICAvLyBzaGlmdGVkIGFuZCBpbmRpdmlkdWFsIG1pZ3JhdGlvbnMgY291bGQgbm8gbG9uZ2VyIHVwZGF0ZSB0aGUgc2FtZSBzb3VyY2UgZmlsZS5cbiAgICAgIGZpbGVTeXN0ZW0uY29tbWl0RWRpdHMoKTtcblxuICAgICAgaGFzRmFpbHVyZXMgPSBoYXNGYWlsdXJlcyB8fCByZXN1bHQuaGFzRmFpbHVyZXM7XG4gICAgfVxuICB9O1xufVxuXG4vKiogV2hldGhlciB0aGUgZ2l2ZW4gbWlncmF0aW9uIHR5cGUgcmVmZXJzIHRvIGEgZGV2a2l0IG1pZ3JhdGlvbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRGV2a2l0TWlncmF0aW9uKFxuICB2YWx1ZTogTWlncmF0aW9uQ3RvcjxhbnksIGFueT4sXG4pOiB2YWx1ZSBpcyBEZXZraXRNaWdyYXRpb25DdG9yPGFueT4ge1xuICByZXR1cm4gRGV2a2l0TWlncmF0aW9uLmlzUHJvdG90eXBlT2YodmFsdWUpO1xufVxuIl19
130
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2a2l0LW1pZ3JhdGlvbi1ydWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL25nLXVwZGF0ZS9kZXZraXQtbWlncmF0aW9uLXJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBR0gsNERBQXdFO0FBR3hFLGdEQUE2QztBQUk3Qyw0RUFBb0c7QUFFcEcsNkRBQXNEO0FBQ3RELHlEQUF1RjtBQUN2Rix5REFBdUQ7QUFDdkQsMEVBQTZFO0FBQzdFLHNFQUF5RTtBQUN6RSwwREFBNkQ7QUFDN0QsOEVBQWlGO0FBQ2pGLDhEQUFpRTtBQUNqRSxzRUFBeUU7QUFDekUsMERBQTZEO0FBQzdELDhFQUFnRjtBQUNoRiw4REFBaUU7QUFDakUsNERBQStEO0FBQy9ELGdFQUFtRTtBQUVuRSxnRUFBbUU7QUFFbkUsdURBQXVEO0FBQzFDLFFBQUEsYUFBYSxHQUFpQztJQUN6RCxpREFBMkI7SUFDM0IsNkNBQXlCO0lBQ3pCLGlDQUFtQjtJQUNuQixxREFBNkI7SUFDN0IscUNBQXFCO0lBQ3JCLDZDQUF5QjtJQUN6QixpQ0FBbUI7SUFDbkIsb0RBQTRCO0lBQzVCLHFDQUFxQjtJQUNyQixtQ0FBb0I7SUFDcEIsdUNBQXNCO0lBQ3RCLHVDQUFzQjtDQUN2QixDQUFDO0FBVUY7OztHQUdHO0FBQ0gsU0FBZ0IsNEJBQTRCLENBQzFDLGFBQTRCLEVBQzVCLGVBQTBDLEVBQzFDLFdBQXdCLEVBQ3hCLHFCQUF1QztJQUV2QyxPQUFPLEtBQUssRUFBRSxJQUFVLEVBQUUsT0FBeUIsRUFBRSxFQUFFO1FBQ3JELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDOUIsTUFBTSxTQUFTLEdBQUcsTUFBTSxJQUFBLHFEQUE0QixFQUFDLElBQUksQ0FBQyxDQUFDO1FBRTNELElBQUksU0FBUyxLQUFLLElBQUksRUFBRTtZQUN0QixNQUFNLENBQUMs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QUMsQ0FBQztZQUNsRixNQUFNLGFBQWEsR0FBa0I7Z0JBQ25DLFlBQVk7Z0JBQ1osV0FBVztnQkFDWCxPQUFPO2dCQUNQLElBQUk7YUFDTCxDQUFDO1lBRUYsTUFBTSxhQUFhLEdBQUcsSUFBSSwyQkFBYSxDQUNyQyxhQUFhLEVBQ2IsT0FBTyxFQUNQLFVBQVUsRUFDVixhQUFhLEVBQ2IsT0FBTyxDQUFDLE1BQU0sQ0FDZixDQUFDO1lBRUYsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FDbEMsVUFBVSxFQUNWLGFBQWEsRUFDYixXQUFXLEVBQ1gseUJBQXlCLENBQzFCLENBQUM7WUFFRixpRkFBaUY7WUFDakYsOEVBQThFO1lBQzlFLGlGQUFpRjtZQUNqRixVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7WUFFekIsV0FBVyxHQUFHLFdBQVcsSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ2xELENBQUM7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDO0FBbEhELG9FQWtIQztBQUVELG9FQUFvRTtBQUNwRSxTQUFnQixpQkFBaUIsQ0FDL0IsS0FBOEI7SUFFOUIsT0FBTyxrQ0FBZSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUM5QyxDQUFDO0FBSkQsOENBSUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtSdWxlLCBTY2hlbWF0aWNDb250ZXh0LCBUcmVlfSBmcm9tICdAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcyc7XG5pbXBvcnQge05vZGVQYWNrYWdlSW5zdGFsbFRhc2t9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3Rhc2tzJztcbmltcG9ydCB7UHJvamVjdERlZmluaXRpb259IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UnO1xuXG5pbXBvcnQge1VwZGF0ZVByb2plY3R9IGZyb20gJy4uL3VwZGF0ZS10b29sJztcbmltcG9ydCB7V29ya3NwYWNlUGF0aH0gZnJvbSAnLi4vdXBkYXRlLXRvb2wvZmlsZS1zeXN0ZW0nO1xuaW1wb3J0IHtNaWdyYXRpb25DdG9yfSBmcm9tICcuLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtUYXJnZXRWZXJzaW9ufSBmcm9tICcuLi91cGRhdGUtdG9vbC90YXJnZXQtdmVyc2lvbic7XG5pbXBvcnQge2dldFRhcmdldFRzY29uZmlnUGF0aCwgZ2V0V29ya3NwYWNlQ29uZmlnR3JhY2VmdWxseX0gZnJvbSAnLi4vdXRpbHMvcHJvamVjdC10c2NvbmZpZy1wYXRocyc7XG5cbmltcG9ydCB7RGV2a2l0RmlsZVN5c3RlbX0gZnJvbSAnLi9kZXZraXQtZmlsZS1zeXN0ZW0nO1xuaW1wb3J0IHtEZXZraXRDb250ZXh0LCBEZXZraXRNaWdyYXRpb24sIERldmtpdE1pZ3JhdGlvbkN0b3J9IGZyb20gJy4vZGV2a2l0LW1pZ3JhdGlvbic7XG5pbXBvcnQge2ZpbmRTdHlsZXNoZWV0RmlsZXN9IGZyb20gJy4vZmluZC1zdHlsZXNoZWV0cyc7XG5pbXBvcnQge0F0dHJpYnV0ZVNlbGVjdG9yc01pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL2F0dHJpYnV0ZS1zZWxlY3RvcnMnO1xuaW1wb3J0IHtDbGFzc0luaGVyaXRhbmNlTWlncmF0aW9ufSBmcm9tICcuL21pZ3JhdGlvbnMvY2xhc3MtaW5oZXJpdGFuY2UnO1xuaW1wb3J0IHtDbGFzc05hbWVzTWlncmF0aW9ufSBmcm9tICcuL21pZ3JhdGlvbnMvY2xhc3MtbmFtZXMnO1xuaW1wb3J0IHtDb25zdHJ1Y3RvclNpZ25hdHVyZU1pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL2NvbnN0cnVjdG9yLXNpZ25hdHVyZSc7XG5pbXBvcnQge0Nzc1NlbGVjdG9yc01pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL2Nzcy1zZWxlY3RvcnMnO1xuaW1wb3J0IHtFbGVtZW50U2VsZWN0b3JzTWlncmF0aW9ufSBmcm9tICcuL21pZ3JhdGlvbnMvZWxlbWVudC1zZWxlY3RvcnMnO1xuaW1wb3J0IHtJbnB1dE5hbWVzTWlncmF0aW9ufSBmcm9tICcuL21pZ3JhdGlvbnMvaW5wdXQtbmFtZXMnO1xuaW1wb3J0IHtNZXRob2RDYWxsQXJndW1lbnRzTWlncmF0aW9ufSBmcm9tICcuL21pZ3JhdGlvbnMvbWV0aG9kLWNhbGwtYXJndW1lbnRzJztcbmltcG9ydCB7TWlzY1RlbXBsYXRlTWlncmF0aW9ufSBmcm9tICcuL21pZ3JhdGlvbnMvbWlzYy10ZW1wbGF0ZSc7XG5pbXBvcnQge091dHB1dE5hbWVzTWlncmF0aW9ufSBmcm9tICcuL21pZ3JhdGlvbnMvb3V0cHV0LW5hbWVzJztcbmltcG9ydCB7UHJvcGVydHlOYW1lc01pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL3Byb3BlcnR5LW5hbWVzJztcbmltcG9ydCB7VXBncmFkZURhdGF9IGZyb20gJy4vdXBncmFkZS1kYXRhJztcbmltcG9ydCB7U3ltYm9sUmVtb3ZhbE1pZ3JhdGlvbn0gZnJvbSAnLi9taWdyYXRpb25zL3N5bWJvbC1yZW1vdmFsJztcblxuLyoqIExpc3Qgb2YgbWlncmF0aW9ucyB3aGljaCBydW4gZm9yIHRoZSBDREsgdXBkYXRlLiAqL1xuZXhwb3J0IGNvbnN0IGNka01pZ3JhdGlvbnM6IE1pZ3JhdGlvbkN0b3I8VXBncmFkZURhdGE+W10gPSBbXG4gIEF0dHJpYnV0ZVNlbGVjdG9yc01pZ3JhdGlvbixcbiAgQ2xhc3NJbmhlcml0YW5jZU1pZ3JhdGlvbixcbiAgQ2xhc3NOYW1lc01pZ3JhdGlvbixcbiAgQ29uc3RydWN0b3JTaWduYXR1cmVNaWdyYXRpb24sXG4gIENzc1NlbGVjdG9yc01pZ3JhdGlvbixcbiAgRWxlbWVudFNlbGVjdG9yc01pZ3JhdGlvbixcbiAgSW5wdXROYW1lc01pZ3JhdGlvbixcbiAgTWV0aG9kQ2FsbEFyZ3VtZW50c01pZ3JhdGlvbixcbiAgTWlzY1RlbXBsYXRlTWlncmF0aW9uLFxuICBPdXRwdXROYW1lc01pZ3JhdGlvbixcbiAgUHJvcGVydHlOYW1lc01pZ3JhdGlvbixcbiAgU3ltYm9sUmVtb3ZhbE1pZ3JhdGlvbixcbl07XG5cbmV4cG9ydCB0eXBlIE51bGxhYmxlRGV2a2l0TWlncmF0aW9uID0gTWlncmF0aW9uQ3RvcjxVcGdyYWRlRGF0YSB8IG51bGwsIERldmtpdENvbnRleHQ+O1xuXG50eXBlIFBvc3RNaWdyYXRpb25GbiA9IChcbiAgY29udGV4dDogU2NoZW1hdGljQ29udGV4dCxcbiAgdGFyZ2V0VmVyc2lvbjogVGFyZ2V0VmVyc2lvbixcbiAgaGFzRmFpbHVyZTogYm9vbGVhbixcbikgPT4gdm9pZDtcblxuLyoqXG4gKiBDcmVhdGVzIGEgQW5ndWxhciBzY2hlbWF0aWMgcnVsZSB0aGF0IHJ1bnMgdGhlIHVwZ3JhZGUgZm9yIHRoZVxuICogc3BlY2lmaWVkIHRhcmdldCB2ZXJzaW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTWlncmF0aW9uU2NoZW1hdGljUnVsZShcbiAgdGFyZ2V0VmVyc2lvbjogVGFyZ2V0VmVyc2lvbixcbiAgZXh0cmFNaWdyYXRpb25zOiBOdWxsYWJsZURldmtpdE1pZ3JhdGlvbltdLFxuICB1cGdyYWRlRGF0YTogVXBncmFkZURhdGEsXG4gIG9uTWlncmF0aW9uQ29tcGxldGVGbj86IFBvc3RNaWdyYXRpb25Gbixcbik6IFJ1bGUge1xuICByZXR1cm4gYXN5bmMgKHRyZWU6IFRyZWUsIGNvbnRleHQ6IFNjaGVtYXRpY0NvbnRleHQpID0+IHtcbiAgICBjb25zdCBsb2dnZXIgPSBjb250ZXh0LmxvZ2dlcjtcbiAgICBjb25zdCB3b3Jrc3BhY2UgPSBhd2FpdCBnZXRXb3Jrc3BhY2VDb25maWdHcmFjZWZ1bGx5KHRyZWUpO1xuXG4gICAgaWYgKHdvcmtzcGFjZSA9PT0gbnVsbCkge1xuICAgICAgbG9nZ2VyLmVycm9yKCdDb3VsZCBub3QgZmluZCB3b3Jrc3BhY2UgY29uZmlndXJhdGlvbiBmaWxlLicpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIEtlZXAgdHJhY2sgb2YgYWxsIHByb2plY3Qgc291cmNlIGZpbGVzIHdoaWNoIGhhdmUgYmVlbiBjaGVja2VkL21pZ3JhdGVkLiBUaGlzIGlzXG4gICAgLy8gbmVjZXNzYXJ5IGJlY2F1c2UgbXVsdGlwbGUgVHlwZVNjcmlwdCBwcm9qZWN0cyBjYW4gY29udGFpbiB0aGUgc2FtZSBzb3VyY2UgZmlsZSBhbmRcbiAgICAvLyB3ZSBkb24ndCB3YW50IHRvIGNoZWNrIHRoZXNlIGFnYWluLCBhcyB0aGlzIHdvdWxkIHJlc3VsdCBpbiBkdXBsaWNhdGVkIGZhaWx1cmUgbWVzc2FnZXMuXG4gICAgY29uc3QgYW5hbHl6ZWRGaWxlcyA9IG5ldyBTZXQ8V29ya3NwYWNlUGF0aD4oKTtcbiAgICBjb25zdCBmaWxlU3lzdGVtID0gbmV3IERldmtpdEZpbGVTeXN0ZW0odHJlZSk7XG4gICAgY29uc3QgcHJvamVjdE5hbWVzID0gd29ya3NwYWNlLnByb2plY3RzLmtleXMoKTtcbiAgICBjb25zdCBtaWdyYXRpb25zID0gWy4uLmNka01pZ3JhdGlvbnMsIC4uLmV4dHJhTWlncmF0aW9uc10gYXMgTnVsbGFibGVEZXZraXRNaWdyYXRpb25bXTtcbiAgICBsZXQgaGFzRmFpbHVyZXMgPSBmYWxzZTtcblxuICAgIGZvciAoY29uc3QgcHJvamVjdE5hbWUgb2YgcHJvamVjdE5hbWVzKSB7XG4gICAgICBjb25zdCBwcm9qZWN0ID0gd29ya3NwYWNlLnByb2plY3RzLmdldChwcm9qZWN0TmFtZSkhO1xuICAgICAgY29uc3QgYnVpbGRUc2NvbmZpZ1BhdGggPSBnZXRUYXJnZXRUc2NvbmZpZ1BhdGgocHJvamVjdCwgJ2J1aWxkJyk7XG4gICAgICBjb25zdCB0ZXN0VHNjb25maWdQYXRoID0gZ2V0VGFyZ2V0VHNjb25maWdQYXRoKHByb2plY3QsICd0ZXN0Jyk7XG5cbiAgICAgIGlmICghYnVpbGRUc2NvbmZpZ1BhdGggJiYgIXRlc3RUc2NvbmZpZ1BhdGgpIHtcbiAgICAgICAgbG9nZ2VyLndhcm4oXG4gICAgICAgICAgYFNraXBwaW5nIG1pZ3JhdGlvbiBmb3IgcHJvamVjdCAke3Byb2plY3ROYW1lfS4gVW5hYmxlIHRvIGRldGVybWluZSAndHNjb25maWcuanNvbicgZmlsZSBpbiB3b3Jrc3BhY2UgY29uZmlnLmAsXG4gICAgICAgICk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBJbiBzb21lIGFwcGxpY2F0aW9ucywgZGV2ZWxvcGVycyB3aWxsIGhhdmUgZ2xvYmFsIHN0eWxlc2hlZXRzIHdoaWNoIGFyZSBub3RcbiAgICAgIC8vIHNwZWNpZmllZCBpbiBhbnkgQW5ndWxhciBjb21wb25lbnQuIFRoZXJlZm9yZSB3ZSBnbG9iIHVwIGFsbCBDU1MgYW5kIFNDU1MgZmlsZXNcbiAgICAgIC8vIGluIHRoZSBwcm9qZWN0IGFuZCBtaWdyYXRlIHRoZW0gaWYgbmVlZGVkLlxuICAgICAgLy8gVE9ETzogcmV3b3JrIHRoaXMgdG8gY29sbGVjdCBnbG9iYWwgc3R5bGVzaGVldHMgZnJvbSB0aGUgd29ya3NwYWNlIGNvbmZpZy4gQ09NUC0yODAuXG4gICAgICBjb25zdCBhZGRpdGlvbmFsU3R5bGVzaGVldFBhdGhzID0gZmluZFN0eWxlc2hlZXRGaWxlcyh0cmVlLCBwcm9qZWN0LnJvb3QpO1xuXG4gICAgICBpZiAoYnVpbGRUc2NvbmZpZ1BhdGggIT09IG51bGwpIHtcbiAgICAgICAgcnVuTWlncmF0aW9ucyhwcm9qZWN0LCBwcm9qZWN0TmFtZSwgYnVpbGRUc2NvbmZpZ1BhdGgsIGFkZGl0aW9uYWxTdHlsZXNoZWV0UGF0aHMsIGZhbHNlKTtcbiAgICAgIH1cbiAgICAgIGlmICh0ZXN0VHNjb25maWdQYXRoICE9PSBudWxsKSB7XG4gICAgICAgIHJ1bk1pZ3JhdGlvbnMocHJvamVjdCwgcHJvamVjdE5hbWUsIHRlc3RUc2NvbmZpZ1BhdGgsIGFkZGl0aW9uYWxTdHlsZXNoZWV0UGF0aHMsIHRydWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBydW5QYWNrYWdlTWFuYWdlciA9IGZhbHNlO1xuICAgIC8vIFJ1biB0aGUgZ2xvYmFsIHBvc3QgbWlncmF0aW9uIHN0YXRpYyBtZW1iZXJzIGZvciBhbGxcbiAgICAvLyByZWdpc3RlcmVkIGRldmtpdCBtaWdyYXRpb25zLlxuICAgIG1pZ3JhdGlvbnMuZm9yRWFjaChtID0+IHtcbiAgICAgIGNvbnN0IGFjdGlvblJlc3VsdCA9XG4gICAgICAgIGlzRGV2a2l0TWlncmF0aW9uKG0pICYmIG0uZ2xvYmFsUG9zdE1pZ3JhdGlvbiAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgPyBtLmdsb2JhbFBvc3RNaWdyYXRpb24odHJlZSwgdGFyZ2V0VmVyc2lvbiwgY29udGV4dClcbiAgICAgICAgICA6IG51bGw7XG4gICAgICBpZiAoYWN0aW9uUmVzdWx0KSB7XG4gICAgICAgIHJ1blBhY2thZ2VNYW5hZ2VyID0gcnVuUGFja2FnZU1hbmFnZXIgfHwgYWN0aW9uUmVzdWx0LnJ1blBhY2thZ2VNYW5hZ2VyO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gSWYgYSBtaWdyYXRpb24gcmVxdWVzdGVkIHRoZSBwYWNrYWdlIG1hbmFnZXIgdG8gcnVuLCB3ZSBydW4gaXQgYXMgYW5cbiAgICAvLyBhc3luY2hyb25vdXMgcG9zdCBtaWdyYXRpb24gdGFzay4gV2UgY2Fubm90IHJ1biBpdCBzeW5jaHJvbm91c2x5LFxuICAgIC8vIGFzIGZpbGUgY2hhbmdlcyBmcm9tIHRoZSBjdXJyZW50IG1pZ3JhdGlvbiB0YXNrIGFyZSBub3QgYXBwbGllZCB0b1xuICAgIC8vIHRoZSBmaWxlIHN5c3RlbSB5ZXQuXG4gICAgaWYgKHJ1blBhY2thZ2VNYW5hZ2VyKSB7XG4gICAgICBjb250ZXh0LmFkZFRhc2sobmV3IE5vZGVQYWNrYWdlSW5zdGFsbFRhc2soe3F1aWV0OiBmYWxzZX0pKTtcbiAgICB9XG5cbiAgICBpZiAob25NaWdyYXRpb25Db21wbGV0ZUZuKSB7XG4gICAgICBvbk1pZ3JhdGlvbkNvbXBsZXRlRm4oY29udGV4dCwgdGFyZ2V0VmVyc2lvbiwgaGFzRmFpbHVyZXMpO1xuICAgIH1cblxuICAgIC8qKiBSdW5zIHRoZSBtaWdyYXRpb25zIGZvciB0aGUgc3BlY2lmaWVkIHdvcmtzcGFjZSBwcm9qZWN0LiAqL1xuICAgIGZ1bmN0aW9uIHJ1bk1pZ3JhdGlvbnMoXG4gICAgICBwcm9qZWN0OiBQcm9qZWN0RGVmaW5pdGlvbixcbiAgICAgIHByb2plY3ROYW1lOiBzdHJpbmcsXG4gICAgICB0c2NvbmZpZ1BhdGg6IFdvcmtzcGFjZVBhdGgsXG4gICAgICBhZGRpdGlvbmFsU3R5bGVzaGVldFBhdGhzOiBzdHJpbmdbXSxcbiAgICAgIGlzVGVzdFRhcmdldDogYm9vbGVhbixcbiAgICApIHtcbiAgICAgIGNvbnN0IHByb2dyYW0gPSBVcGRhdGVQcm9qZWN0LmNyZWF0ZVByb2dyYW1Gcm9tVHNjb25maWcodHNjb25maWdQYXRoLCBmaWxlU3lzdGVtKTtcbiAgICAgIGNvbnN0IHVwZGF0ZUNvbnRleHQ6IERldmtpdENvbnRleHQgPSB7XG4gICAgICAgIGlzVGVzdFRhcmdldCxcbiAgICAgICAgcHJvamVjdE5hbWUsXG4gICAgICAgIHByb2plY3QsXG4gICAgICAgIHRyZWUsXG4gICAgICB9O1xuXG4gICAgICBjb25zdCB1cGRhdGVQcm9qZWN0ID0gbmV3IFVwZGF0ZVByb2plY3QoXG4gICAgICAgIHVwZGF0ZUNvbnRleHQsXG4gICAgICAgIHByb2dyYW0sXG4gICAgICAgIGZpbGVTeXN0ZW0sXG4gICAgICAgIGFuYWx5emVkRmlsZXMsXG4gICAgICAgIGNvbnRleHQubG9nZ2VyLFxuICAgICAgKTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gdXBkYXRlUHJvamVjdC5taWdyYXRlKFxuICAgICAgICBtaWdyYXRpb25zLFxuICAgICAgICB0YXJnZXRWZXJzaW9uLFxuICAgICAgICB1cGdyYWRlRGF0YSxcbiAgICAgICAgYWRkaXRpb25hbFN0eWxlc2hlZXRQYXRocyxcbiAgICAgICk7XG5cbiAgICAgIC8vIENvbW1pdCBhbGwgcmVjb3JkZWQgZWRpdHMgaW4gdGhlIHVwZGF0ZSByZWNvcmRlci4gV2UgYXBwbHkgdGhlIGVkaXRzIGFmdGVyIGFsbFxuICAgICAgLy8gbWlncmF0aW9ucyByYW4gYmVjYXVzZSBvdGhlcndpc2Ugb2Zmc2V0cyBpbiB0aGUgVHlwZVNjcmlwdCBwcm9ncmFtIHdvdWxkIGJlXG4gICAgICAvLyBzaGlmdGVkIGFuZCBpbmRpdmlkdWFsIG1pZ3JhdGlvbnMgY291bGQgbm8gbG9uZ2VyIHVwZGF0ZSB0aGUgc2FtZSBzb3VyY2UgZmlsZS5cbiAgICAgIGZpbGVTeXN0ZW0uY29tbWl0RWRpdHMoKTtcblxuICAgICAgaGFzRmFpbHVyZXMgPSBoYXNGYWlsdXJlcyB8fCByZXN1bHQuaGFzRmFpbHVyZXM7XG4gICAgfVxuICB9O1xufVxuXG4vKiogV2hldGhlciB0aGUgZ2l2ZW4gbWlncmF0aW9uIHR5cGUgcmVmZXJzIHRvIGEgZGV2a2l0IG1pZ3JhdGlvbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRGV2a2l0TWlncmF0aW9uKFxuICB2YWx1ZTogTWlncmF0aW9uQ3RvcjxhbnksIGFueT4sXG4pOiB2YWx1ZSBpcyBEZXZraXRNaWdyYXRpb25DdG9yPGFueT4ge1xuICByZXR1cm4gRGV2a2l0TWlncmF0aW9uLmlzUHJvdG90eXBlT2YodmFsdWUpO1xufVxuIl19