@angular/cdk 16.0.0-next.5 → 16.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (412) hide show
  1. package/{esm2020 → esm2022}/a11y/a11y-module.mjs +4 -4
  2. package/{esm2020 → esm2022}/a11y/aria-describer/aria-describer.mjs +3 -3
  3. package/{esm2020 → esm2022}/a11y/focus-monitor/focus-monitor.mjs +5 -5
  4. package/{esm2020 → esm2022}/a11y/focus-trap/configurable-focus-trap-factory.mjs +3 -3
  5. package/{esm2020 → esm2022}/a11y/focus-trap/focus-trap-manager.mjs +3 -3
  6. package/{esm2020 → esm2022}/a11y/focus-trap/focus-trap.mjs +5 -5
  7. package/{esm2020 → esm2022}/a11y/high-contrast-mode/high-contrast-mode-detector.mjs +3 -3
  8. package/{esm2020 → esm2022}/a11y/input-modality/input-modality-detector.mjs +3 -3
  9. package/{esm2020 → esm2022}/a11y/interactivity-checker/interactivity-checker.mjs +3 -3
  10. package/{esm2020 → esm2022}/a11y/live-announcer/live-announcer.mjs +5 -5
  11. package/{esm2020 → esm2022}/accordion/accordion-item.mjs +7 -7
  12. package/{esm2020 → esm2022}/accordion/accordion-module.mjs +4 -4
  13. package/{esm2020 → esm2022}/accordion/accordion.mjs +3 -3
  14. package/{esm2020 → esm2022}/bidi/bidi-module.mjs +4 -4
  15. package/{esm2020 → esm2022}/bidi/dir.mjs +3 -3
  16. package/{esm2020 → esm2022}/bidi/directionality.mjs +3 -3
  17. package/{esm2020 → esm2022}/clipboard/clipboard-module.mjs +4 -4
  18. package/{esm2020 → esm2022}/clipboard/clipboard.mjs +3 -3
  19. package/{esm2020 → esm2022}/clipboard/copy-to-clipboard.mjs +3 -3
  20. package/{esm2020 → esm2022}/collections/unique-selection-dispatcher.mjs +3 -3
  21. package/{esm2020 → esm2022}/dialog/dialog-container.mjs +3 -3
  22. package/{esm2020 → esm2022}/dialog/dialog-module.mjs +11 -11
  23. package/{esm2020 → esm2022}/dialog/dialog.mjs +3 -3
  24. package/{esm2020 → esm2022}/drag-drop/directives/drag-handle.mjs +3 -3
  25. package/{esm2020 → esm2022}/drag-drop/directives/drag-placeholder.mjs +3 -3
  26. package/{esm2020 → esm2022}/drag-drop/directives/drag-preview.mjs +3 -3
  27. package/esm2022/drag-drop/directives/drag.mjs +489 -0
  28. package/{esm2020 → esm2022}/drag-drop/directives/drop-list-group.mjs +3 -3
  29. package/esm2022/drag-drop/directives/drop-list.mjs +348 -0
  30. package/{esm2020 → esm2022}/drag-drop/drag-drop-module.mjs +14 -14
  31. package/{esm2020 → esm2022}/drag-drop/drag-drop-registry.mjs +3 -3
  32. package/{esm2020 → esm2022}/drag-drop/drag-drop.mjs +3 -3
  33. package/{esm2020 → esm2022}/layout/breakpoints-observer.mjs +3 -3
  34. package/{esm2020 → esm2022}/layout/layout-module.mjs +4 -4
  35. package/{esm2020 → esm2022}/layout/media-matcher.mjs +3 -3
  36. package/{esm2020 → esm2022}/listbox/listbox-module.mjs +4 -4
  37. package/{esm2020 → esm2022}/listbox/listbox.mjs +11 -11
  38. package/{esm2020 → esm2022}/menu/context-menu-trigger.mjs +8 -8
  39. package/{esm2020 → esm2022}/menu/menu-aim.mjs +5 -5
  40. package/{esm2020 → esm2022}/menu/menu-bar.mjs +7 -7
  41. package/{esm2020 → esm2022}/menu/menu-base.mjs +3 -3
  42. package/{esm2020 → esm2022}/menu/menu-group.mjs +3 -3
  43. package/{esm2020 → esm2022}/menu/menu-item-checkbox.mjs +6 -6
  44. package/{esm2020 → esm2022}/menu/menu-item-radio.mjs +6 -6
  45. package/{esm2020 → esm2022}/menu/menu-item-selectable.mjs +3 -3
  46. package/{esm2020 → esm2022}/menu/menu-item.mjs +3 -3
  47. package/{esm2020 → esm2022}/menu/menu-module.mjs +20 -20
  48. package/{esm2020 → esm2022}/menu/menu-stack.mjs +3 -3
  49. package/{esm2020 → esm2022}/menu/menu-trigger-base.mjs +3 -3
  50. package/{esm2020 → esm2022}/menu/menu-trigger.mjs +6 -6
  51. package/{esm2020 → esm2022}/menu/menu.mjs +7 -7
  52. package/{esm2020 → esm2022}/observers/observe-content.mjs +10 -10
  53. package/{esm2020 → esm2022}/overlay/dispatchers/base-overlay-dispatcher.mjs +3 -3
  54. package/{esm2020 → esm2022}/overlay/dispatchers/overlay-keyboard-dispatcher.mjs +3 -3
  55. package/{esm2020 → esm2022}/overlay/dispatchers/overlay-outside-click-dispatcher.mjs +3 -3
  56. package/{esm2020 → esm2022}/overlay/fullscreen-overlay-container.mjs +3 -3
  57. package/{esm2020 → esm2022}/overlay/overlay-container.mjs +3 -3
  58. package/{esm2020 → esm2022}/overlay/overlay-directives.mjs +5 -5
  59. package/{esm2020 → esm2022}/overlay/overlay-module.mjs +4 -4
  60. package/{esm2020 → esm2022}/overlay/overlay.mjs +3 -3
  61. package/{esm2020 → esm2022}/overlay/position/overlay-position-builder.mjs +3 -3
  62. package/{esm2020 → esm2022}/overlay/scroll/scroll-strategy-options.mjs +3 -3
  63. package/{esm2020 → esm2022}/platform/platform-module.mjs +4 -4
  64. package/{esm2020 → esm2022}/platform/platform.mjs +3 -3
  65. package/esm2022/portal/portal-directives.mjs +250 -0
  66. package/{esm2020 → esm2022}/scrolling/fixed-size-virtual-scroll.mjs +9 -9
  67. package/{esm2020 → esm2022}/scrolling/scroll-dispatcher.mjs +3 -3
  68. package/{esm2020 → esm2022}/scrolling/scrollable.mjs +3 -3
  69. package/{esm2020 → esm2022}/scrolling/scrolling-module.mjs +17 -17
  70. package/{esm2020 → esm2022}/scrolling/viewport-ruler.mjs +3 -3
  71. package/{esm2020 → esm2022}/scrolling/virtual-for-of.mjs +3 -3
  72. package/{esm2020 → esm2022}/scrolling/virtual-scroll-viewport.mjs +9 -9
  73. package/{esm2020 → esm2022}/scrolling/virtual-scrollable-element.mjs +3 -3
  74. package/{esm2020 → esm2022}/scrolling/virtual-scrollable-window.mjs +3 -3
  75. package/{esm2020 → esm2022}/scrolling/virtual-scrollable.mjs +3 -3
  76. package/{esm2020 → esm2022}/stepper/step-header.mjs +3 -3
  77. package/{esm2020 → esm2022}/stepper/step-label.mjs +3 -3
  78. package/{esm2020 → esm2022}/stepper/stepper-button.mjs +5 -5
  79. package/{esm2020 → esm2022}/stepper/stepper-module.mjs +9 -9
  80. package/{esm2020 → esm2022}/stepper/stepper.mjs +5 -5
  81. package/{esm2020 → esm2022}/table/cell.mjs +15 -15
  82. package/{esm2020 → esm2022}/table/coalesced-style-scheduler.mjs +3 -3
  83. package/esm2022/table/row.mjs +271 -0
  84. package/{esm2020 → esm2022}/table/table-module.mjs +46 -46
  85. package/{esm2020 → esm2022}/table/table.mjs +19 -19
  86. package/{esm2020 → esm2022}/table/text-column.mjs +5 -5
  87. package/{esm2020 → esm2022}/text-field/autofill.mjs +5 -5
  88. package/{esm2020 → esm2022}/text-field/autosize.mjs +3 -3
  89. package/{esm2020 → esm2022}/text-field/text-field-module.mjs +4 -4
  90. package/{esm2020 → esm2022}/tree/nested-node.mjs +6 -6
  91. package/{esm2020 → esm2022}/tree/node.mjs +3 -3
  92. package/{esm2020 → esm2022}/tree/outlet.mjs +3 -3
  93. package/{esm2020 → esm2022}/tree/padding.mjs +3 -3
  94. package/{esm2020 → esm2022}/tree/toggle.mjs +3 -3
  95. package/{esm2020 → esm2022}/tree/tree-module.mjs +16 -16
  96. package/esm2022/tree/tree.mjs +349 -0
  97. package/{esm2020 → esm2022}/version.mjs +1 -1
  98. package/{fesm2020 → fesm2022}/a11y.mjs +27 -27
  99. package/{fesm2020 → fesm2022}/a11y.mjs.map +1 -1
  100. package/{fesm2020 → fesm2022}/accordion.mjs +11 -11
  101. package/{fesm2020 → fesm2022}/accordion.mjs.map +1 -1
  102. package/{fesm2020 → fesm2022}/bidi.mjs +7 -7
  103. package/{fesm2020 → fesm2022}/bidi.mjs.map +1 -1
  104. package/{fesm2015 → fesm2022}/cdk.mjs +1 -1
  105. package/{fesm2015 → fesm2022}/cdk.mjs.map +1 -1
  106. package/{fesm2020 → fesm2022}/clipboard.mjs +7 -7
  107. package/{fesm2020 → fesm2022}/clipboard.mjs.map +1 -1
  108. package/{fesm2020 → fesm2022}/collections.mjs +2 -2
  109. package/{fesm2020 → fesm2022}/collections.mjs.map +1 -1
  110. package/{fesm2020 → fesm2022}/dialog.mjs +14 -14
  111. package/{fesm2020 → fesm2022}/dialog.mjs.map +1 -1
  112. package/{fesm2020 → fesm2022}/drag-drop.mjs +36 -36
  113. package/{fesm2020 → fesm2022}/drag-drop.mjs.map +1 -1
  114. package/{fesm2015 → fesm2022}/layout.mjs +7 -7
  115. package/{fesm2015 → fesm2022}/layout.mjs.map +1 -1
  116. package/{fesm2020 → fesm2022}/listbox.mjs +13 -13
  117. package/{fesm2020 → fesm2022}/listbox.mjs.map +1 -1
  118. package/{fesm2020 → fesm2022}/menu.mjs +69 -69
  119. package/{fesm2020 → fesm2022}/menu.mjs.map +1 -1
  120. package/{fesm2020 → fesm2022}/observers.mjs +9 -9
  121. package/{fesm2020 → fesm2022}/observers.mjs.map +1 -1
  122. package/{fesm2020 → fesm2022}/overlay.mjs +23 -23
  123. package/{fesm2020 → fesm2022}/overlay.mjs.map +1 -1
  124. package/{fesm2020 → fesm2022}/platform.mjs +5 -5
  125. package/{fesm2020 → fesm2022}/platform.mjs.map +1 -1
  126. package/{fesm2020 → fesm2022}/portal.mjs +21 -21
  127. package/{fesm2020 → fesm2022}/portal.mjs.map +1 -1
  128. package/{fesm2020 → fesm2022}/scrolling.mjs +46 -46
  129. package/{fesm2020 → fesm2022}/scrolling.mjs.map +1 -1
  130. package/{fesm2020 → fesm2022}/stepper.mjs +20 -20
  131. package/{fesm2020 → fesm2022}/stepper.mjs.map +1 -1
  132. package/{fesm2020 → fesm2022}/table.mjs +109 -109
  133. package/{fesm2020 → fesm2022}/table.mjs.map +1 -1
  134. package/{fesm2020 → fesm2022}/text-field.mjs +9 -9
  135. package/{fesm2020 → fesm2022}/text-field.mjs.map +1 -1
  136. package/{fesm2020 → fesm2022}/tree.mjs +37 -37
  137. package/{fesm2020 → fesm2022}/tree.mjs.map +1 -1
  138. package/package.json +77 -131
  139. package/schematics/ng-add/index.js +1 -1
  140. package/schematics/ng-add/index.mjs +1 -1
  141. package/schematics/ng-update/devkit-file-system.js +3 -2
  142. package/schematics/ng-update/devkit-file-system.mjs +3 -2
  143. package/schematics/ng-update/migrations/attribute-selectors.js +5 -8
  144. package/schematics/ng-update/migrations/attribute-selectors.mjs +5 -8
  145. package/schematics/ng-update/migrations/class-inheritance.js +8 -11
  146. package/schematics/ng-update/migrations/class-inheritance.mjs +8 -11
  147. package/schematics/ng-update/migrations/class-names.js +12 -15
  148. package/schematics/ng-update/migrations/class-names.mjs +12 -15
  149. package/schematics/ng-update/migrations/constructor-signature.js +7 -10
  150. package/schematics/ng-update/migrations/constructor-signature.mjs +7 -10
  151. package/schematics/ng-update/migrations/css-selectors.js +5 -8
  152. package/schematics/ng-update/migrations/css-selectors.mjs +5 -8
  153. package/schematics/ng-update/migrations/element-selectors.js +5 -8
  154. package/schematics/ng-update/migrations/element-selectors.mjs +5 -8
  155. package/schematics/ng-update/migrations/input-names.js +5 -8
  156. package/schematics/ng-update/migrations/input-names.mjs +5 -8
  157. package/schematics/ng-update/migrations/method-call-arguments.js +5 -8
  158. package/schematics/ng-update/migrations/method-call-arguments.mjs +5 -8
  159. package/schematics/ng-update/migrations/misc-template.js +3 -6
  160. package/schematics/ng-update/migrations/misc-template.mjs +3 -6
  161. package/schematics/ng-update/migrations/output-names.js +5 -8
  162. package/schematics/ng-update/migrations/output-names.mjs +5 -8
  163. package/schematics/ng-update/migrations/property-names.js +5 -8
  164. package/schematics/ng-update/migrations/property-names.mjs +5 -8
  165. package/schematics/ng-update/migrations/symbol-removal.js +5 -8
  166. package/schematics/ng-update/migrations/symbol-removal.mjs +5 -8
  167. package/schematics/update-tool/component-resource-collector.js +5 -3
  168. package/schematics/update-tool/component-resource-collector.mjs +5 -3
  169. package/schematics/update-tool/index.js +8 -2
  170. package/schematics/update-tool/index.mjs +8 -2
  171. package/schematics/update-tool/migration.js +10 -3
  172. package/schematics/update-tool/migration.mjs +10 -3
  173. package/schematics/update-tool/utils/virtual-host.js +3 -2
  174. package/schematics/update-tool/utils/virtual-host.mjs +3 -2
  175. package/esm2020/drag-drop/directives/drag.mjs +0 -489
  176. package/esm2020/drag-drop/directives/drop-list.mjs +0 -348
  177. package/esm2020/portal/portal-directives.mjs +0 -250
  178. package/esm2020/table/row.mjs +0 -271
  179. package/esm2020/tree/tree.mjs +0 -349
  180. package/fesm2015/a11y.mjs +0 -2409
  181. package/fesm2015/a11y.mjs.map +0 -1
  182. package/fesm2015/accordion.mjs +0 -238
  183. package/fesm2015/accordion.mjs.map +0 -1
  184. package/fesm2015/bidi.mjs +0 -150
  185. package/fesm2015/bidi.mjs.map +0 -1
  186. package/fesm2015/clipboard.mjs +0 -219
  187. package/fesm2015/clipboard.mjs.map +0 -1
  188. package/fesm2015/collections.mjs +0 -462
  189. package/fesm2015/collections.mjs.map +0 -1
  190. package/fesm2015/dialog.mjs +0 -749
  191. package/fesm2015/dialog.mjs.map +0 -1
  192. package/fesm2015/drag-drop.mjs +0 -3667
  193. package/fesm2015/drag-drop.mjs.map +0 -1
  194. package/fesm2015/listbox.mjs +0 -888
  195. package/fesm2015/listbox.mjs.map +0 -1
  196. package/fesm2015/menu.mjs +0 -1876
  197. package/fesm2015/menu.mjs.map +0 -1
  198. package/fesm2015/observers.mjs +0 -188
  199. package/fesm2015/observers.mjs.map +0 -1
  200. package/fesm2015/overlay.mjs +0 -2998
  201. package/fesm2015/overlay.mjs.map +0 -1
  202. package/fesm2015/platform.mjs +0 -320
  203. package/fesm2015/platform.mjs.map +0 -1
  204. package/fesm2015/portal.mjs +0 -640
  205. package/fesm2015/portal.mjs.map +0 -1
  206. package/fesm2015/scrolling.mjs +0 -1515
  207. package/fesm2015/scrolling.mjs.map +0 -1
  208. package/fesm2015/stepper.mjs +0 -570
  209. package/fesm2015/stepper.mjs.map +0 -1
  210. package/fesm2015/table.mjs +0 -2271
  211. package/fesm2015/table.mjs.map +0 -1
  212. package/fesm2015/testing/selenium-webdriver.mjs +0 -396
  213. package/fesm2015/testing/selenium-webdriver.mjs.map +0 -1
  214. package/fesm2015/testing/testbed.mjs +0 -811
  215. package/fesm2015/testing/testbed.mjs.map +0 -1
  216. package/fesm2015/testing.mjs +0 -748
  217. package/fesm2015/testing.mjs.map +0 -1
  218. package/fesm2015/text-field.mjs +0 -424
  219. package/fesm2015/text-field.mjs.map +0 -1
  220. package/fesm2015/tree.mjs +0 -871
  221. package/fesm2015/tree.mjs.map +0 -1
  222. package/fesm2020/cdk.mjs +0 -7
  223. package/fesm2020/cdk.mjs.map +0 -1
  224. package/fesm2020/coercion.mjs +0 -74
  225. package/fesm2020/coercion.mjs.map +0 -1
  226. package/fesm2020/keycodes.mjs +0 -137
  227. package/fesm2020/keycodes.mjs.map +0 -1
  228. package/fesm2020/layout.mjs +0 -210
  229. package/fesm2020/layout.mjs.map +0 -1
  230. /package/{esm2020 → esm2022}/a11y/a11y_public_index.mjs +0 -0
  231. /package/{esm2020 → esm2022}/a11y/aria-describer/aria-reference.mjs +0 -0
  232. /package/{esm2020 → esm2022}/a11y/fake-event-detection.mjs +0 -0
  233. /package/{esm2020 → esm2022}/a11y/focus-trap/configurable-focus-trap-config.mjs +0 -0
  234. /package/{esm2020 → esm2022}/a11y/focus-trap/configurable-focus-trap.mjs +0 -0
  235. /package/{esm2020 → esm2022}/a11y/focus-trap/event-listener-inert-strategy.mjs +0 -0
  236. /package/{esm2020 → esm2022}/a11y/focus-trap/focus-trap-inert-strategy.mjs +0 -0
  237. /package/{esm2020 → esm2022}/a11y/index.mjs +0 -0
  238. /package/{esm2020 → esm2022}/a11y/key-manager/activedescendant-key-manager.mjs +0 -0
  239. /package/{esm2020 → esm2022}/a11y/key-manager/focus-key-manager.mjs +0 -0
  240. /package/{esm2020 → esm2022}/a11y/key-manager/list-key-manager.mjs +0 -0
  241. /package/{esm2020 → esm2022}/a11y/live-announcer/live-announcer-tokens.mjs +0 -0
  242. /package/{esm2020 → esm2022}/a11y/public-api.mjs +0 -0
  243. /package/{esm2020 → esm2022}/accordion/accordion_public_index.mjs +0 -0
  244. /package/{esm2020 → esm2022}/accordion/index.mjs +0 -0
  245. /package/{esm2020 → esm2022}/accordion/public-api.mjs +0 -0
  246. /package/{esm2020 → esm2022}/bidi/bidi_public_index.mjs +0 -0
  247. /package/{esm2020 → esm2022}/bidi/dir-document-token.mjs +0 -0
  248. /package/{esm2020 → esm2022}/bidi/index.mjs +0 -0
  249. /package/{esm2020 → esm2022}/bidi/public-api.mjs +0 -0
  250. /package/{esm2020 → esm2022}/clipboard/clipboard_public_index.mjs +0 -0
  251. /package/{esm2020 → esm2022}/clipboard/index.mjs +0 -0
  252. /package/{esm2020 → esm2022}/clipboard/pending-copy.mjs +0 -0
  253. /package/{esm2020 → esm2022}/clipboard/public-api.mjs +0 -0
  254. /package/{esm2020 → esm2022}/coercion/array.mjs +0 -0
  255. /package/{esm2020 → esm2022}/coercion/boolean-property.mjs +0 -0
  256. /package/{esm2020 → esm2022}/coercion/css-pixel-value.mjs +0 -0
  257. /package/{esm2020 → esm2022}/coercion/element.mjs +0 -0
  258. /package/{esm2020 → esm2022}/coercion/index.mjs +0 -0
  259. /package/{esm2020 → esm2022}/coercion/number-property.mjs +0 -0
  260. /package/{esm2020 → esm2022}/coercion/public-api.mjs +0 -0
  261. /package/{esm2020 → esm2022}/coercion/string-array.mjs +0 -0
  262. /package/{esm2020 → esm2022}/collections/array-data-source.mjs +0 -0
  263. /package/{esm2020 → esm2022}/collections/collection-viewer.mjs +0 -0
  264. /package/{esm2020 → esm2022}/collections/collections_public_index.mjs +0 -0
  265. /package/{esm2020 → esm2022}/collections/data-source.mjs +0 -0
  266. /package/{esm2020 → esm2022}/collections/dispose-view-repeater-strategy.mjs +0 -0
  267. /package/{esm2020 → esm2022}/collections/index.mjs +0 -0
  268. /package/{esm2020 → esm2022}/collections/public-api.mjs +0 -0
  269. /package/{esm2020 → esm2022}/collections/recycle-view-repeater-strategy.mjs +0 -0
  270. /package/{esm2020 → esm2022}/collections/selection-model.mjs +0 -0
  271. /package/{esm2020 → esm2022}/collections/tree-adapter.mjs +0 -0
  272. /package/{esm2020 → esm2022}/collections/view-repeater.mjs +0 -0
  273. /package/{esm2020 → esm2022}/dialog/dialog-config.mjs +0 -0
  274. /package/{esm2020 → esm2022}/dialog/dialog-injectors.mjs +0 -0
  275. /package/{esm2020 → esm2022}/dialog/dialog-ref.mjs +0 -0
  276. /package/{esm2020 → esm2022}/dialog/dialog_public_index.mjs +0 -0
  277. /package/{esm2020 → esm2022}/dialog/index.mjs +0 -0
  278. /package/{esm2020 → esm2022}/dialog/public-api.mjs +0 -0
  279. /package/{esm2020 → esm2022}/drag-drop/directives/assertions.mjs +0 -0
  280. /package/{esm2020 → esm2022}/drag-drop/directives/config.mjs +0 -0
  281. /package/{esm2020 → esm2022}/drag-drop/dom/client-rect.mjs +0 -0
  282. /package/{esm2020 → esm2022}/drag-drop/dom/clone-node.mjs +0 -0
  283. /package/{esm2020 → esm2022}/drag-drop/dom/parent-position-tracker.mjs +0 -0
  284. /package/{esm2020 → esm2022}/drag-drop/dom/styling.mjs +0 -0
  285. /package/{esm2020 → esm2022}/drag-drop/dom/transition-duration.mjs +0 -0
  286. /package/{esm2020 → esm2022}/drag-drop/drag-drop_public_index.mjs +0 -0
  287. /package/{esm2020 → esm2022}/drag-drop/drag-events.mjs +0 -0
  288. /package/{esm2020 → esm2022}/drag-drop/drag-parent.mjs +0 -0
  289. /package/{esm2020 → esm2022}/drag-drop/drag-ref.mjs +0 -0
  290. /package/{esm2020 → esm2022}/drag-drop/drag-utils.mjs +0 -0
  291. /package/{esm2020 → esm2022}/drag-drop/drop-list-ref.mjs +0 -0
  292. /package/{esm2020 → esm2022}/drag-drop/index.mjs +0 -0
  293. /package/{esm2020 → esm2022}/drag-drop/public-api.mjs +0 -0
  294. /package/{esm2020 → esm2022}/drag-drop/sorting/drop-list-sort-strategy.mjs +0 -0
  295. /package/{esm2020 → esm2022}/drag-drop/sorting/single-axis-sort-strategy.mjs +0 -0
  296. /package/{esm2020 → esm2022}/index.mjs +0 -0
  297. /package/{esm2020 → esm2022}/keycodes/index.mjs +0 -0
  298. /package/{esm2020 → esm2022}/keycodes/keycodes.mjs +0 -0
  299. /package/{esm2020 → esm2022}/keycodes/keycodes_public_index.mjs +0 -0
  300. /package/{esm2020 → esm2022}/keycodes/modifiers.mjs +0 -0
  301. /package/{esm2020 → esm2022}/keycodes/public-api.mjs +0 -0
  302. /package/{esm2020 → esm2022}/layout/breakpoints.mjs +0 -0
  303. /package/{esm2020 → esm2022}/layout/index.mjs +0 -0
  304. /package/{esm2020 → esm2022}/layout/layout_public_index.mjs +0 -0
  305. /package/{esm2020 → esm2022}/layout/public-api.mjs +0 -0
  306. /package/{esm2020 → esm2022}/listbox/index.mjs +0 -0
  307. /package/{esm2020 → esm2022}/listbox/listbox_public_index.mjs +0 -0
  308. /package/{esm2020 → esm2022}/listbox/public-api.mjs +0 -0
  309. /package/{esm2020 → esm2022}/menu/index.mjs +0 -0
  310. /package/{esm2020 → esm2022}/menu/menu-errors.mjs +0 -0
  311. /package/{esm2020 → esm2022}/menu/menu-interface.mjs +0 -0
  312. /package/{esm2020 → esm2022}/menu/menu_public_index.mjs +0 -0
  313. /package/{esm2020 → esm2022}/menu/pointer-focus-tracker.mjs +0 -0
  314. /package/{esm2020 → esm2022}/menu/public-api.mjs +0 -0
  315. /package/{esm2020 → esm2022}/observers/index.mjs +0 -0
  316. /package/{esm2020 → esm2022}/observers/observers_public_index.mjs +0 -0
  317. /package/{esm2020 → esm2022}/observers/public-api.mjs +0 -0
  318. /package/{esm2020 → esm2022}/overlay/dispatchers/index.mjs +0 -0
  319. /package/{esm2020 → esm2022}/overlay/index.mjs +0 -0
  320. /package/{esm2020 → esm2022}/overlay/overlay-config.mjs +0 -0
  321. /package/{esm2020 → esm2022}/overlay/overlay-ref.mjs +0 -0
  322. /package/{esm2020 → esm2022}/overlay/overlay-reference.mjs +0 -0
  323. /package/{esm2020 → esm2022}/overlay/overlay_public_index.mjs +0 -0
  324. /package/{esm2020 → esm2022}/overlay/position/connected-position.mjs +0 -0
  325. /package/{esm2020 → esm2022}/overlay/position/flexible-connected-position-strategy.mjs +0 -0
  326. /package/{esm2020 → esm2022}/overlay/position/global-position-strategy.mjs +0 -0
  327. /package/{esm2020 → esm2022}/overlay/position/position-strategy.mjs +0 -0
  328. /package/{esm2020 → esm2022}/overlay/position/scroll-clip.mjs +0 -0
  329. /package/{esm2020 → esm2022}/overlay/public-api.mjs +0 -0
  330. /package/{esm2020 → esm2022}/overlay/scroll/block-scroll-strategy.mjs +0 -0
  331. /package/{esm2020 → esm2022}/overlay/scroll/close-scroll-strategy.mjs +0 -0
  332. /package/{esm2020 → esm2022}/overlay/scroll/index.mjs +0 -0
  333. /package/{esm2020 → esm2022}/overlay/scroll/noop-scroll-strategy.mjs +0 -0
  334. /package/{esm2020 → esm2022}/overlay/scroll/reposition-scroll-strategy.mjs +0 -0
  335. /package/{esm2020 → esm2022}/overlay/scroll/scroll-strategy.mjs +0 -0
  336. /package/{esm2020 → esm2022}/platform/features/input-types.mjs +0 -0
  337. /package/{esm2020 → esm2022}/platform/features/passive-listeners.mjs +0 -0
  338. /package/{esm2020 → esm2022}/platform/features/scrolling.mjs +0 -0
  339. /package/{esm2020 → esm2022}/platform/features/shadow-dom.mjs +0 -0
  340. /package/{esm2020 → esm2022}/platform/features/test-environment.mjs +0 -0
  341. /package/{esm2020 → esm2022}/platform/index.mjs +0 -0
  342. /package/{esm2020 → esm2022}/platform/platform_public_index.mjs +0 -0
  343. /package/{esm2020 → esm2022}/platform/public-api.mjs +0 -0
  344. /package/{esm2020 → esm2022}/portal/dom-portal-outlet.mjs +0 -0
  345. /package/{esm2020 → esm2022}/portal/index.mjs +0 -0
  346. /package/{esm2020 → esm2022}/portal/portal-errors.mjs +0 -0
  347. /package/{esm2020 → esm2022}/portal/portal-injector.mjs +0 -0
  348. /package/{esm2020 → esm2022}/portal/portal.mjs +0 -0
  349. /package/{esm2020 → esm2022}/portal/portal_public_index.mjs +0 -0
  350. /package/{esm2020 → esm2022}/portal/public-api.mjs +0 -0
  351. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  352. /package/{esm2020 → esm2022}/scrolling/index.mjs +0 -0
  353. /package/{esm2020 → esm2022}/scrolling/public-api.mjs +0 -0
  354. /package/{esm2020 → esm2022}/scrolling/scrolling_public_index.mjs +0 -0
  355. /package/{esm2020 → esm2022}/scrolling/virtual-scroll-repeater.mjs +0 -0
  356. /package/{esm2020 → esm2022}/scrolling/virtual-scroll-strategy.mjs +0 -0
  357. /package/{esm2020 → esm2022}/stepper/index.mjs +0 -0
  358. /package/{esm2020 → esm2022}/stepper/public-api.mjs +0 -0
  359. /package/{esm2020 → esm2022}/stepper/stepper_public_index.mjs +0 -0
  360. /package/{esm2020 → esm2022}/table/can-stick.mjs +0 -0
  361. /package/{esm2020 → esm2022}/table/index.mjs +0 -0
  362. /package/{esm2020 → esm2022}/table/public-api.mjs +0 -0
  363. /package/{esm2020 → esm2022}/table/sticky-position-listener.mjs +0 -0
  364. /package/{esm2020 → esm2022}/table/sticky-styler.mjs +0 -0
  365. /package/{esm2020 → esm2022}/table/table-errors.mjs +0 -0
  366. /package/{esm2020 → esm2022}/table/table_public_index.mjs +0 -0
  367. /package/{esm2020 → esm2022}/table/tokens.mjs +0 -0
  368. /package/{esm2020 → esm2022}/testing/change-detection.mjs +0 -0
  369. /package/{esm2020 → esm2022}/testing/component-harness.mjs +0 -0
  370. /package/{esm2020 → esm2022}/testing/element-dimensions.mjs +0 -0
  371. /package/{esm2020 → esm2022}/testing/harness-environment.mjs +0 -0
  372. /package/{esm2020 → esm2022}/testing/index.mjs +0 -0
  373. /package/{esm2020 → esm2022}/testing/public-api.mjs +0 -0
  374. /package/{esm2020 → esm2022}/testing/selenium-webdriver/index.mjs +0 -0
  375. /package/{esm2020 → esm2022}/testing/selenium-webdriver/public-api.mjs +0 -0
  376. /package/{esm2020 → esm2022}/testing/selenium-webdriver/selenium-web-driver-element.mjs +0 -0
  377. /package/{esm2020 → esm2022}/testing/selenium-webdriver/selenium-web-driver-harness-environment.mjs +0 -0
  378. /package/{esm2020 → esm2022}/testing/selenium-webdriver/selenium-webdriver-keys.mjs +0 -0
  379. /package/{esm2020 → esm2022}/testing/test-element-errors.mjs +0 -0
  380. /package/{esm2020 → esm2022}/testing/test-element.mjs +0 -0
  381. /package/{esm2020 → esm2022}/testing/testbed/fake-events/dispatch-events.mjs +0 -0
  382. /package/{esm2020 → esm2022}/testing/testbed/fake-events/element-focus.mjs +0 -0
  383. /package/{esm2020 → esm2022}/testing/testbed/fake-events/event-objects.mjs +0 -0
  384. /package/{esm2020 → esm2022}/testing/testbed/fake-events/index.mjs +0 -0
  385. /package/{esm2020 → esm2022}/testing/testbed/fake-events/type-in-element.mjs +0 -0
  386. /package/{esm2020 → esm2022}/testing/testbed/index.mjs +0 -0
  387. /package/{esm2020 → esm2022}/testing/testbed/public-api.mjs +0 -0
  388. /package/{esm2020 → esm2022}/testing/testbed/task-state-zone-interceptor.mjs +0 -0
  389. /package/{esm2020 → esm2022}/testing/testbed/testbed-harness-environment.mjs +0 -0
  390. /package/{esm2020 → esm2022}/testing/testbed/unit-test-element.mjs +0 -0
  391. /package/{esm2020 → esm2022}/testing/text-filtering.mjs +0 -0
  392. /package/{esm2020 → esm2022}/text-field/index.mjs +0 -0
  393. /package/{esm2020 → esm2022}/text-field/public-api.mjs +0 -0
  394. /package/{esm2020 → esm2022}/text-field/text-field_public_index.mjs +0 -0
  395. /package/{esm2020 → esm2022}/tree/control/base-tree-control.mjs +0 -0
  396. /package/{esm2020 → esm2022}/tree/control/flat-tree-control.mjs +0 -0
  397. /package/{esm2020 → esm2022}/tree/control/nested-tree-control.mjs +0 -0
  398. /package/{esm2020 → esm2022}/tree/control/tree-control.mjs +0 -0
  399. /package/{esm2020 → esm2022}/tree/index.mjs +0 -0
  400. /package/{esm2020 → esm2022}/tree/public-api.mjs +0 -0
  401. /package/{esm2020 → esm2022}/tree/tree-errors.mjs +0 -0
  402. /package/{esm2020 → esm2022}/tree/tree_public_index.mjs +0 -0
  403. /package/{fesm2015 → fesm2022}/coercion.mjs +0 -0
  404. /package/{fesm2015 → fesm2022}/coercion.mjs.map +0 -0
  405. /package/{fesm2015 → fesm2022}/keycodes.mjs +0 -0
  406. /package/{fesm2015 → fesm2022}/keycodes.mjs.map +0 -0
  407. /package/{fesm2020 → fesm2022}/testing/selenium-webdriver.mjs +0 -0
  408. /package/{fesm2020 → fesm2022}/testing/selenium-webdriver.mjs.map +0 -0
  409. /package/{fesm2020 → fesm2022}/testing/testbed.mjs +0 -0
  410. /package/{fesm2020 → fesm2022}/testing/testbed.mjs.map +0 -0
  411. /package/{fesm2020 → fesm2022}/testing.mjs +0 -0
  412. /package/{fesm2020 → fesm2022}/testing.mjs.map +0 -0
@@ -17,16 +17,13 @@ const upgrade_data_1 = require("../upgrade-data");
17
17
  * which had a public property change.
18
18
  */
19
19
  class ClassInheritanceMigration extends migration_1.Migration {
20
- constructor() {
21
- super(...arguments);
22
- /**
23
- * Map of classes that have been updated. Each class name maps to the according property
24
- * change data.
25
- */
26
- this.propertyNames = new Map();
27
- // Only enable the migration rule if there is upgrade data.
28
- this.enabled = this.propertyNames.size !== 0;
29
- }
20
+ /**
21
+ * Map of classes that have been updated. Each class name maps to the according property
22
+ * change data.
23
+ */
24
+ propertyNames = new Map();
25
+ // Only enable the migration rule if there is upgrade data.
26
+ enabled = this.propertyNames.size !== 0;
30
27
  init() {
31
28
  (0, upgrade_data_1.getVersionUpgradeData)(this, 'propertyNames')
32
29
  .filter(data => data.limitedTo && data.limitedTo.classes)
@@ -55,4 +52,4 @@ class ClassInheritanceMigration extends migration_1.Migration {
55
52
  }
56
53
  }
57
54
  exports.ClassInheritanceMigration = ClassInheritanceMigration;
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtaW5oZXJpdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvY2xhc3MtaW5oZXJpdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBQ2pDLDJEQUFzRDtBQUV0RCx5REFBNEQ7QUFDNUQsa0RBQW1FO0FBRW5FOzs7R0FHRztBQUNILE1BQWEseUJBQTBCLFNBQVEscUJBQXNCO0lBQXJFOztRQUNFOzs7V0FHRztRQUNILGtCQUFhLEdBQUcsSUFBSSxHQUFHLEVBQW1DLENBQUM7UUFFM0QsMkRBQTJEO1FBQzNELFlBQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLENBQUM7SUFvQzFDLENBQUM7SUFsQ1UsSUFBSTtRQUNYLElBQUEsb0NBQXFCLEVBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQzthQUN6QyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDO2FBQ3hELE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUVRLFNBQVMsQ0FBQyxJQUFhO1FBQzlCLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFO1lBQy9CLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNuQztJQUNILENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxJQUF5QjtRQUN0RCxNQUFNLFNBQVMsR0FBRyxJQUFBLCtCQUFrQixFQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQztRQUVoRSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2QsT0FBTztTQUNSO1FBRUQsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUU5QyxJQUFJLElBQUksRUFBRTtnQkFDUixJQUFJLENBQUMsbUJBQW1CLENBQ3RCLElBQUksRUFDSixnQkFBZ0IsU0FBUyx3QkFBd0I7b0JBQy9DLElBQUksUUFBUSw4Q0FBOEM7b0JBQzFELElBQUksSUFBSSxDQUFDLE9BQU8scUJBQXFCLElBQUksQ0FBQyxXQUFXLEtBQUs7b0JBQzFELDRDQUE0QyxDQUMvQyxDQUFDO2FBQ0g7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTVDRCw4REE0Q0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQge01pZ3JhdGlvbn0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvbWlncmF0aW9uJztcbmltcG9ydCB7UHJvcGVydHlOYW1lVXBncmFkZURhdGF9IGZyb20gJy4uL2RhdGEvcHJvcGVydHktbmFtZXMnO1xuaW1wb3J0IHtkZXRlcm1pbmVCYXNlVHlwZXN9IGZyb20gJy4uL3R5cGVzY3JpcHQvYmFzZS10eXBlcyc7XG5pbXBvcnQge2dldFZlcnNpb25VcGdyYWRlRGF0YSwgVXBncmFkZURhdGF9IGZyb20gJy4uL3VwZ3JhZGUtZGF0YSc7XG5cbi8qKlxuICogTWlncmF0aW9uIHRoYXQgaWRlbnRpZmllcyBjbGFzcyBkZWNsYXJhdGlvbnMgdGhhdCBleHRlbmQgQ0RLIG9yIE1hdGVyaWFsIGNsYXNzZXNcbiAqIHdoaWNoIGhhZCBhIHB1YmxpYyBwcm9wZXJ0eSBjaGFuZ2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBDbGFzc0luaGVyaXRhbmNlTWlncmF0aW9uIGV4dGVuZHMgTWlncmF0aW9uPFVwZ3JhZGVEYXRhPiB7XG4gIC8qKlxuICAgKiBNYXAgb2YgY2xhc3NlcyB0aGF0IGhhdmUgYmVlbiB1cGRhdGVkLiBFYWNoIGNsYXNzIG5hbWUgbWFwcyB0byB0aGUgYWNjb3JkaW5nIHByb3BlcnR5XG4gICAqIGNoYW5nZSBkYXRhLlxuICAgKi9cbiAgcHJvcGVydHlOYW1lcyA9IG5ldyBNYXA8c3RyaW5nLCBQcm9wZXJ0eU5hbWVVcGdyYWRlRGF0YT4oKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5wcm9wZXJ0eU5hbWVzLnNpemUgIT09IDA7XG5cbiAgb3ZlcnJpZGUgaW5pdCgpOiB2b2lkIHtcbiAgICBnZXRWZXJzaW9uVXBncmFkZURhdGEodGhpcywgJ3Byb3BlcnR5TmFtZXMnKVxuICAgICAgLmZpbHRlcihkYXRhID0+IGRhdGEubGltaXRlZFRvICYmIGRhdGEubGltaXRlZFRvLmNsYXNzZXMpXG4gICAgICAuZm9yRWFjaChkYXRhID0+IGRhdGEubGltaXRlZFRvLmNsYXNzZXMuZm9yRWFjaChuYW1lID0+IHRoaXMucHJvcGVydHlOYW1lcy5zZXQobmFtZSwgZGF0YSkpKTtcbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0Tm9kZShub2RlOiB0cy5Ob2RlKTogdm9pZCB7XG4gICAgaWYgKHRzLmlzQ2xhc3NEZWNsYXJhdGlvbihub2RlKSkge1xuICAgICAgdGhpcy5fdmlzaXRDbGFzc0RlY2xhcmF0aW9uKG5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3Zpc2l0Q2xhc3NEZWNsYXJhdGlvbihub2RlOiB0cy5DbGFzc0RlY2xhcmF0aW9uKSB7XG4gICAgY29uc3QgYmFzZVR5cGVzID0gZGV0ZXJtaW5lQmFzZVR5cGVzKG5vZGUpO1xuICAgIGNvbnN0IGNsYXNzTmFtZSA9IG5vZGUubmFtZSA/IG5vZGUubmFtZS50ZXh0IDogJ3t1bmtub3duLW5hbWV9JztcblxuICAgIGlmICghYmFzZVR5cGVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgYmFzZVR5cGVzLmZvckVhY2godHlwZU5hbWUgPT4ge1xuICAgICAgY29uc3QgZGF0YSA9IHRoaXMucHJvcGVydHlOYW1lcy5nZXQodHlwZU5hbWUpO1xuXG4gICAgICBpZiAoZGF0YSkge1xuICAgICAgICB0aGlzLmNyZWF0ZUZhaWx1cmVBdE5vZGUoXG4gICAgICAgICAgbm9kZSxcbiAgICAgICAgICBgRm91bmQgY2xhc3MgXCIke2NsYXNzTmFtZX1cIiB3aGljaCBleHRlbmRzIGNsYXNzIGAgK1xuICAgICAgICAgICAgYFwiJHt0eXBlTmFtZX1cIi4gUGxlYXNlIG5vdGUgdGhhdCB0aGUgYmFzZSBjbGFzcyBwcm9wZXJ0eSBgICtcbiAgICAgICAgICAgIGBcIiR7ZGF0YS5yZXBsYWNlfVwiIGhhcyBjaGFuZ2VkIHRvIFwiJHtkYXRhLnJlcGxhY2VXaXRofVwiLiBgICtcbiAgICAgICAgICAgIGBZb3UgbWF5IG5lZWQgdG8gdXBkYXRlIHlvdXIgY2xhc3MgYXMgd2VsbC5gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtaW5oZXJpdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvY2xhc3MtaW5oZXJpdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBQ2pDLDJEQUFzRDtBQUV0RCx5REFBNEQ7QUFDNUQsa0RBQW1FO0FBRW5FOzs7R0FHRztBQUNILE1BQWEseUJBQTBCLFNBQVEscUJBQXNCO0lBQ25FOzs7T0FHRztJQUNILGFBQWEsR0FBRyxJQUFJLEdBQUcsRUFBbUMsQ0FBQztJQUUzRCwyREFBMkQ7SUFDM0QsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQztJQUUvQixJQUFJO1FBQ1gsSUFBQSxvQ0FBcUIsRUFBQyxJQUFJLEVBQUUsZUFBZSxDQUFDO2FBQ3pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7YUFDeEQsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRVEsU0FBUyxDQUFDLElBQWE7UUFDOUIsSUFBSSxFQUFFLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDL0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ25DO0lBQ0gsQ0FBQztJQUVPLHNCQUFzQixDQUFDLElBQXlCO1FBQ3RELE1BQU0sU0FBUyxHQUFHLElBQUEsK0JBQWtCLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0MsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDO1FBRWhFLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDZCxPQUFPO1NBQ1I7UUFFRCxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRTlDLElBQUksSUFBSSxFQUFFO2dCQUNSLElBQUksQ0FBQyxtQkFBbUIsQ0FDdEIsSUFBSSxFQUNKLGdCQUFnQixTQUFTLHdCQUF3QjtvQkFDL0MsSUFBSSxRQUFRLDhDQUE4QztvQkFDMUQsSUFBSSxJQUFJLENBQUMsT0FBTyxxQkFBcUIsSUFBSSxDQUFDLFdBQVcsS0FBSztvQkFDMUQsNENBQTRDLENBQy9DLENBQUM7YUFDSDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBNUNELDhEQTRDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtQcm9wZXJ0eU5hbWVVcGdyYWRlRGF0YX0gZnJvbSAnLi4vZGF0YS9wcm9wZXJ0eS1uYW1lcyc7XG5pbXBvcnQge2RldGVybWluZUJhc2VUeXBlc30gZnJvbSAnLi4vdHlwZXNjcmlwdC9iYXNlLXR5cGVzJztcbmltcG9ydCB7Z2V0VmVyc2lvblVwZ3JhZGVEYXRhLCBVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCBpZGVudGlmaWVzIGNsYXNzIGRlY2xhcmF0aW9ucyB0aGF0IGV4dGVuZCBDREsgb3IgTWF0ZXJpYWwgY2xhc3Nlc1xuICogd2hpY2ggaGFkIGEgcHVibGljIHByb3BlcnR5IGNoYW5nZS5cbiAqL1xuZXhwb3J0IGNsYXNzIENsYXNzSW5oZXJpdGFuY2VNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqXG4gICAqIE1hcCBvZiBjbGFzc2VzIHRoYXQgaGF2ZSBiZWVuIHVwZGF0ZWQuIEVhY2ggY2xhc3MgbmFtZSBtYXBzIHRvIHRoZSBhY2NvcmRpbmcgcHJvcGVydHlcbiAgICogY2hhbmdlIGRhdGEuXG4gICAqL1xuICBwcm9wZXJ0eU5hbWVzID0gbmV3IE1hcDxzdHJpbmcsIFByb3BlcnR5TmFtZVVwZ3JhZGVEYXRhPigpO1xuXG4gIC8vIE9ubHkgZW5hYmxlIHRoZSBtaWdyYXRpb24gcnVsZSBpZiB0aGVyZSBpcyB1cGdyYWRlIGRhdGEuXG4gIGVuYWJsZWQgPSB0aGlzLnByb3BlcnR5TmFtZXMuc2l6ZSAhPT0gMDtcblxuICBvdmVycmlkZSBpbml0KCk6IHZvaWQge1xuICAgIGdldFZlcnNpb25VcGdyYWRlRGF0YSh0aGlzLCAncHJvcGVydHlOYW1lcycpXG4gICAgICAuZmlsdGVyKGRhdGEgPT4gZGF0YS5saW1pdGVkVG8gJiYgZGF0YS5saW1pdGVkVG8uY2xhc3NlcylcbiAgICAgIC5mb3JFYWNoKGRhdGEgPT4gZGF0YS5saW1pdGVkVG8uY2xhc3Nlcy5mb3JFYWNoKG5hbWUgPT4gdGhpcy5wcm9wZXJ0eU5hbWVzLnNldChuYW1lLCBkYXRhKSkpO1xuICB9XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNDbGFzc0RlY2xhcmF0aW9uKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdENsYXNzRGVjbGFyYXRpb24obm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdmlzaXRDbGFzc0RlY2xhcmF0aW9uKG5vZGU6IHRzLkNsYXNzRGVjbGFyYXRpb24pIHtcbiAgICBjb25zdCBiYXNlVHlwZXMgPSBkZXRlcm1pbmVCYXNlVHlwZXMobm9kZSk7XG4gICAgY29uc3QgY2xhc3NOYW1lID0gbm9kZS5uYW1lID8gbm9kZS5uYW1lLnRleHQgOiAne3Vua25vd24tbmFtZX0nO1xuXG4gICAgaWYgKCFiYXNlVHlwZXMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBiYXNlVHlwZXMuZm9yRWFjaCh0eXBlTmFtZSA9PiB7XG4gICAgICBjb25zdCBkYXRhID0gdGhpcy5wcm9wZXJ0eU5hbWVzLmdldCh0eXBlTmFtZSk7XG5cbiAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgIHRoaXMuY3JlYXRlRmFpbHVyZUF0Tm9kZShcbiAgICAgICAgICBub2RlLFxuICAgICAgICAgIGBGb3VuZCBjbGFzcyBcIiR7Y2xhc3NOYW1lfVwiIHdoaWNoIGV4dGVuZHMgY2xhc3MgYCArXG4gICAgICAgICAgICBgXCIke3R5cGVOYW1lfVwiLiBQbGVhc2Ugbm90ZSB0aGF0IHRoZSBiYXNlIGNsYXNzIHByb3BlcnR5IGAgK1xuICAgICAgICAgICAgYFwiJHtkYXRhLnJlcGxhY2V9XCIgaGFzIGNoYW5nZWQgdG8gXCIke2RhdGEucmVwbGFjZVdpdGh9XCIuIGAgK1xuICAgICAgICAgICAgYFlvdSBtYXkgbmVlZCB0byB1cGRhdGUgeW91ciBjbGFzcyBhcyB3ZWxsLmAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -20,20 +20,17 @@ const upgrade_data_1 = require("../upgrade-data");
20
20
  // TODO: rework this rule to identify symbols using the import identifier resolver. This
21
21
  // makes it more robust, less AST convoluted and is more TypeScript AST idiomatic. COMP-300.
22
22
  class ClassNamesMigration extends migration_1.Migration {
23
- constructor() {
24
- super(...arguments);
25
- /** Change data that upgrades to the specified target version. */
26
- this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'classNames');
27
- /**
28
- * List of identifier names that have been imported from `@angular/material` or `@angular/cdk`
29
- * in the current source file and therefore can be considered trusted.
30
- */
31
- this.trustedIdentifiers = new Set();
32
- /** List of namespaces that have been imported from `@angular/material` or `@angular/cdk`. */
33
- this.trustedNamespaces = new Set();
34
- // Only enable the migration rule if there is upgrade data.
35
- this.enabled = this.data.length !== 0;
36
- }
23
+ /** Change data that upgrades to the specified target version. */
24
+ data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'classNames');
25
+ /**
26
+ * List of identifier names that have been imported from `@angular/material` or `@angular/cdk`
27
+ * in the current source file and therefore can be considered trusted.
28
+ */
29
+ trustedIdentifiers = new Set();
30
+ /** List of namespaces that have been imported from `@angular/material` or `@angular/cdk`. */
31
+ trustedNamespaces = new Set();
32
+ // Only enable the migration rule if there is upgrade data.
33
+ enabled = this.data.length !== 0;
37
34
  visitNode(node) {
38
35
  if (ts.isIdentifier(node)) {
39
36
  this._visitIdentifier(node);
@@ -88,4 +85,4 @@ class ClassNamesMigration extends migration_1.Migration {
88
85
  }
89
86
  }
90
87
  exports.ClassNamesMigration = ClassNamesMigration;
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvY2xhc3MtbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBQ2pDLDJEQUFzRDtBQUd0RCxtREFJK0I7QUFDL0IsdUVBR3lDO0FBQ3pDLGtEQUFtRTtBQUVuRTs7O0dBR0c7QUFDSCx3RkFBd0Y7QUFDeEYsNEZBQTRGO0FBQzVGLE1BQWEsbUJBQW9CLFNBQVEscUJBQXNCO0lBQS9EOztRQUNFLGlFQUFpRTtRQUNqRSxTQUFJLEdBQTJCLElBQUEsb0NBQXFCLEVBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRXpFOzs7V0FHRztRQUNILHVCQUFrQixHQUFnQixJQUFJLEdBQUcsRUFBRSxDQUFDO1FBRTVDLDZGQUE2RjtRQUM3RixzQkFBaUIsR0FBZ0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUUzQywyREFBMkQ7UUFDM0QsWUFBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQStEbkMsQ0FBQztJQTdEVSxTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVELGtGQUFrRjtJQUMxRSxnQkFBZ0IsQ0FBQyxVQUF5QjtRQUNoRCxtRkFBbUY7UUFDbkYsa0JBQWtCO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEtBQUssVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdELE9BQU87U0FDUjtRQUVELHdGQUF3RjtRQUN4Rix5RkFBeUY7UUFDekYsMkJBQTJCO1FBQzNCLElBQUksSUFBQSwrQkFBcUIsRUFBQyxVQUFVLENBQUMsSUFBSSxJQUFBLCtDQUEyQixFQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTVDLE9BQU8sSUFBSSxDQUFDLDZCQUE2QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsNEZBQTRGO1FBQzVGLDhDQUE4QztRQUM5QyxJQUFJLElBQUEsK0JBQXFCLEVBQUMsVUFBVSxDQUFDLElBQUksSUFBQSwrQ0FBMkIsRUFBQyxVQUFVLENBQUMsRUFBRTtZQUNoRixPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2RDtRQUVELHlGQUF5RjtRQUN6Riw2RkFBNkY7UUFDN0YscUVBQXFFO1FBQ3JFLElBQUksSUFBQSwrQkFBcUIsRUFBQyxVQUFVLENBQUMsSUFBSSxJQUFBLCtDQUEyQixFQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTdDLE9BQU8sSUFBSSxDQUFDLDZCQUE2QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsNkZBQTZGO1FBQzdGLCtGQUErRjtRQUMvRixJQUFJLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDcEQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7WUFFaEQsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUM5RSxPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN2RDtTQUNGO2FBQU0sSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2RCxPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2RDtJQUNILENBQUM7SUFFRCxzRUFBc0U7SUFDOUQsNkJBQTZCLENBQUMsVUFBeUI7UUFDN0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLFVBQVUsQ0FBQyxJQUFJLENBQUUsQ0FBQztRQUM1RSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFOUUsSUFBSSxDQUFDLFVBQVU7YUFDWixJQUFJLENBQUMsUUFBUSxDQUFDO2FBQ2QsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDcEQsV0FBVyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNGO0FBN0VELGtEQTZFQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuXG5pbXBvcnQge0NsYXNzTmFtZVVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhJztcbmltcG9ydCB7XG4gIGlzRXhwb3J0U3BlY2lmaWVyTm9kZSxcbiAgaXNJbXBvcnRTcGVjaWZpZXJOb2RlLFxuICBpc05hbWVzcGFjZUltcG9ydE5vZGUsXG59IGZyb20gJy4uL3R5cGVzY3JpcHQvaW1wb3J0cyc7XG5pbXBvcnQge1xuICBpc01hdGVyaWFsRXhwb3J0RGVjbGFyYXRpb24sXG4gIGlzTWF0ZXJpYWxJbXBvcnREZWNsYXJhdGlvbixcbn0gZnJvbSAnLi4vdHlwZXNjcmlwdC9tb2R1bGUtc3BlY2lmaWVycyc7XG5pbXBvcnQge2dldFZlcnNpb25VcGdyYWRlRGF0YSwgVXBncmFkZURhdGF9IGZyb20gJy4uL3VwZ3JhZGUtZGF0YSc7XG5cbi8qKlxuICogTWlncmF0aW9uIHRoYXQgd2Fsa3MgdGhyb3VnaCBldmVyeSBpZGVudGlmaWVyIHRoYXQgaXMgcGFydCBvZiBBbmd1bGFyIE1hdGVyaWFsIG9yIHRociBDREtcbiAqIGFuZCByZXBsYWNlcyB0aGUgb3V0ZGF0ZWQgbmFtZSB3aXRoIHRoZSBuZXcgb25lIGlmIHNwZWNpZmllZCBpbiB0aGUgdXBncmFkZSBkYXRhLlxuICovXG4vLyBUT0RPOiByZXdvcmsgdGhpcyBydWxlIHRvIGlkZW50aWZ5IHN5bWJvbHMgdXNpbmcgdGhlIGltcG9ydCBpZGVudGlmaWVyIHJlc29sdmVyLiBUaGlzXG4vLyBtYWtlcyBpdCBtb3JlIHJvYnVzdCwgbGVzcyBBU1QgY29udm9sdXRlZCBhbmQgaXMgbW9yZSBUeXBlU2NyaXB0IEFTVCBpZGlvbWF0aWMuIENPTVAtMzAwLlxuZXhwb3J0IGNsYXNzIENsYXNzTmFtZXNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogQ2xhc3NOYW1lVXBncmFkZURhdGFbXSA9IGdldFZlcnNpb25VcGdyYWRlRGF0YSh0aGlzLCAnY2xhc3NOYW1lcycpO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGlkZW50aWZpZXIgbmFtZXMgdGhhdCBoYXZlIGJlZW4gaW1wb3J0ZWQgZnJvbSBgQGFuZ3VsYXIvbWF0ZXJpYWxgIG9yIGBAYW5ndWxhci9jZGtgXG4gICAqIGluIHRoZSBjdXJyZW50IHNvdXJjZSBmaWxlIGFuZCB0aGVyZWZvcmUgY2FuIGJlIGNvbnNpZGVyZWQgdHJ1c3RlZC5cbiAgICovXG4gIHRydXN0ZWRJZGVudGlmaWVyczogU2V0PHN0cmluZz4gPSBuZXcgU2V0KCk7XG5cbiAgLyoqIExpc3Qgb2YgbmFtZXNwYWNlcyB0aGF0IGhhdmUgYmVlbiBpbXBvcnRlZCBmcm9tIGBAYW5ndWxhci9tYXRlcmlhbGAgb3IgYEBhbmd1bGFyL2Nka2AuICovXG4gIHRydXN0ZWROYW1lc3BhY2VzOiBTZXQ8c3RyaW5nPiA9IG5ldyBTZXQoKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5kYXRhLmxlbmd0aCAhPT0gMDtcblxuICBvdmVycmlkZSB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc0lkZW50aWZpZXIobm9kZSkpIHtcbiAgICAgIHRoaXMuX3Zpc2l0SWRlbnRpZmllcihub2RlKTtcbiAgICB9XG4gIH1cblxuICAvKiogTWV0aG9kIHRoYXQgaXMgY2FsbGVkIGZvciBldmVyeSBpZGVudGlmaWVyIGluc2lkZSBvZiB0aGUgc3BlY2lmaWVkIHByb2plY3QuICovXG4gIHByaXZhdGUgX3Zpc2l0SWRlbnRpZmllcihpZGVudGlmaWVyOiB0cy5JZGVudGlmaWVyKSB7XG4gICAgLy8gRm9yIGlkZW50aWZpZXJzIHRoYXQgYXJlbid0IGxpc3RlZCBpbiB0aGUgY2xhc3NOYW1lIGRhdGEsIHRoZSB3aG9sZSBjaGVjayBjYW4gYmVcbiAgICAvLyBza2lwcGVkIHNhZmVseS5cbiAgICBpZiAoIXRoaXMuZGF0YS5zb21lKGRhdGEgPT4gZGF0YS5yZXBsYWNlID09PSBpZGVudGlmaWVyLnRleHQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gRm9yIG5hbWVzcGFjZSBpbXBvcnRzIHRoYXQgYXJlIHJlZmVycmluZyB0byBBbmd1bGFyIE1hdGVyaWFsIG9yIHRoZSBDREssIHdlIHN0b3JlIHRoZVxuICAgIC8vIG5hbWVzcGFjZSBuYW1lIGluIG9yZGVyIHRvIGJlIGFibGUgdG8gc2FmZWx5IGZpbmQgaWRlbnRpZmllcnMgdGhhdCBkb24ndCBiZWxvbmcgdG8gdGhlXG4gICAgLy8gZGV2ZWxvcGVyJ3MgYXBwbGljYXRpb24uXG4gICAgaWYgKGlzTmFtZXNwYWNlSW1wb3J0Tm9kZShpZGVudGlmaWVyKSAmJiBpc01hdGVyaWFsSW1wb3J0RGVjbGFyYXRpb24oaWRlbnRpZmllcikpIHtcbiAgICAgIHRoaXMudHJ1c3RlZE5hbWVzcGFjZXMuYWRkKGlkZW50aWZpZXIudGV4dCk7XG5cbiAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgIH1cblxuICAgIC8vIEZvciBleHBvcnQgZGVjbGFyYXRpb25zIHRoYXQgYXJlIHJlZmVycmluZyB0byBBbmd1bGFyIE1hdGVyaWFsIG9yIHRoZSBDREssIHRoZSBpZGVudGlmaWVyXG4gICAgLy8gY2FuIGJlIGltbWVkaWF0ZWx5IHVwZGF0ZWQgdG8gdGhlIG5ldyBuYW1lLlxuICAgIGlmIChpc0V4cG9ydFNwZWNpZmllck5vZGUoaWRlbnRpZmllcikgJiYgaXNNYXRlcmlhbEV4cG9ydERlY2xhcmF0aW9uKGlkZW50aWZpZXIpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fY3JlYXRlRmFpbHVyZVdpdGhSZXBsYWNlbWVudChpZGVudGlmaWVyKTtcbiAgICB9XG5cbiAgICAvLyBGb3IgaW1wb3J0IGRlY2xhcmF0aW9ucyB0aGF0IGFyZSByZWZlcnJpbmcgdG8gQW5ndWxhciBNYXRlcmlhbCBvciB0aGUgQ0RLLCB0aGUgbmFtZSBvZlxuICAgIC8vIHRoZSBpbXBvcnQgaWRlbnRpZmllcnMuIFRoaXMgYWxsb3dzIHVzIHRvIGlkZW50aWZ5IGlkZW50aWZpZXJzIHRoYXQgYmVsb25nIHRvIE1hdGVyaWFsIGFuZFxuICAgIC8vIHRoZSBDREssIGFuZCB3ZSB3b24ndCBhY2NpZGVudGFsbHkgdG91Y2ggYSBkZXZlbG9wZXIncyBpZGVudGlmaWVyLlxuICAgIGlmIChpc0ltcG9ydFNwZWNpZmllck5vZGUoaWRlbnRpZmllcikgJiYgaXNNYXRlcmlhbEltcG9ydERlY2xhcmF0aW9uKGlkZW50aWZpZXIpKSB7XG4gICAgICB0aGlzLnRydXN0ZWRJZGVudGlmaWVycy5hZGQoaWRlbnRpZmllci50ZXh0KTtcblxuICAgICAgcmV0dXJuIHRoaXMuX2NyZWF0ZUZhaWx1cmVXaXRoUmVwbGFjZW1lbnQoaWRlbnRpZmllcik7XG4gICAgfVxuXG4gICAgLy8gSW4gY2FzZSB0aGUgaWRlbnRpZmllciBpcyBwYXJ0IG9mIGEgcHJvcGVydHkgYWNjZXNzIGV4cHJlc3Npb24sIHdlIG5lZWQgdG8gdmVyaWZ5IHRoYXQgdGhlXG4gICAgLy8gcHJvcGVydHkgYWNjZXNzIG9yaWdpbmF0ZXMgZnJvbSBhIG5hbWVzcGFjZSB0aGF0IGhhcyBiZWVuIGltcG9ydGVkIGZyb20gTWF0ZXJpYWwgb3IgdGhlIENESy5cbiAgICBpZiAodHMuaXNQcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24oaWRlbnRpZmllci5wYXJlbnQpKSB7XG4gICAgICBjb25zdCBleHByZXNzaW9uID0gaWRlbnRpZmllci5wYXJlbnQuZXhwcmVzc2lvbjtcblxuICAgICAgaWYgKHRzLmlzSWRlbnRpZmllcihleHByZXNzaW9uKSAmJiB0aGlzLnRydXN0ZWROYW1lc3BhY2VzLmhhcyhleHByZXNzaW9uLnRleHQpKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy50cnVzdGVkSWRlbnRpZmllcnMuaGFzKGlkZW50aWZpZXIudGV4dCkpIHtcbiAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDcmVhdGVzIGEgZmFpbHVyZSBhbmQgcmVwbGFjZW1lbnQgZm9yIHRoZSBzcGVjaWZpZWQgaWRlbnRpZmllci4gKi9cbiAgcHJpdmF0ZSBfY3JlYXRlRmFpbHVyZVdpdGhSZXBsYWNlbWVudChpZGVudGlmaWVyOiB0cy5JZGVudGlmaWVyKSB7XG4gICAgY29uc3QgY2xhc3NEYXRhID0gdGhpcy5kYXRhLmZpbmQoZGF0YSA9PiBkYXRhLnJlcGxhY2UgPT09IGlkZW50aWZpZXIudGV4dCkhO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlU3lzdGVtLnJlc29sdmUoaWRlbnRpZmllci5nZXRTb3VyY2VGaWxlKCkuZmlsZU5hbWUpO1xuXG4gICAgdGhpcy5maWxlU3lzdGVtXG4gICAgICAuZWRpdChmaWxlUGF0aClcbiAgICAgIC5yZW1vdmUoaWRlbnRpZmllci5nZXRTdGFydCgpLCBpZGVudGlmaWVyLmdldFdpZHRoKCkpXG4gICAgICAuaW5zZXJ0UmlnaHQoaWRlbnRpZmllci5nZXRTdGFydCgpLCBjbGFzc0RhdGEucmVwbGFjZVdpdGgpO1xuICB9XG59XG4iXX0=
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvY2xhc3MtbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBQ2pDLDJEQUFzRDtBQUd0RCxtREFJK0I7QUFDL0IsdUVBR3lDO0FBQ3pDLGtEQUFtRTtBQUVuRTs7O0dBR0c7QUFDSCx3RkFBd0Y7QUFDeEYsNEZBQTRGO0FBQzVGLE1BQWEsbUJBQW9CLFNBQVEscUJBQXNCO0lBQzdELGlFQUFpRTtJQUNqRSxJQUFJLEdBQTJCLElBQUEsb0NBQXFCLEVBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBRXpFOzs7T0FHRztJQUNILGtCQUFrQixHQUFnQixJQUFJLEdBQUcsRUFBRSxDQUFDO0lBRTVDLDZGQUE2RjtJQUM3RixpQkFBaUIsR0FBZ0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUUzQywyREFBMkQ7SUFDM0QsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUV4QixTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVELGtGQUFrRjtJQUMxRSxnQkFBZ0IsQ0FBQyxVQUF5QjtRQUNoRCxtRkFBbUY7UUFDbkYsa0JBQWtCO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEtBQUssVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdELE9BQU87U0FDUjtRQUVELHdGQUF3RjtRQUN4Rix5RkFBeUY7UUFDekYsMkJBQTJCO1FBQzNCLElBQUksSUFBQSwrQkFBcUIsRUFBQyxVQUFVLENBQUMsSUFBSSxJQUFBLCtDQUEyQixFQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTVDLE9BQU8sSUFBSSxDQUFDLDZCQUE2QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsNEZBQTRGO1FBQzVGLDhDQUE4QztRQUM5QyxJQUFJLElBQUEsK0JBQXFCLEVBQUMsVUFBVSxDQUFDLElBQUksSUFBQSwrQ0FBMkIsRUFBQyxVQUFVLENBQUMsRUFBRTtZQUNoRixPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2RDtRQUVELHlGQUF5RjtRQUN6Riw2RkFBNkY7UUFDN0YscUVBQXFFO1FBQ3JFLElBQUksSUFBQSwrQkFBcUIsRUFBQyxVQUFVLENBQUMsSUFBSSxJQUFBLCtDQUEyQixFQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTdDLE9BQU8sSUFBSSxDQUFDLDZCQUE2QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsNkZBQTZGO1FBQzdGLCtGQUErRjtRQUMvRixJQUFJLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDcEQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7WUFFaEQsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUM5RSxPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN2RDtTQUNGO2FBQU0sSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2RCxPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2RDtJQUNILENBQUM7SUFFRCxzRUFBc0U7SUFDOUQsNkJBQTZCLENBQUMsVUFBeUI7UUFDN0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLFVBQVUsQ0FBQyxJQUFJLENBQUUsQ0FBQztRQUM1RSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFOUUsSUFBSSxDQUFDLFVBQVU7YUFDWixJQUFJLENBQUMsUUFBUSxDQUFDO2FBQ2QsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDcEQsV0FBVyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNGO0FBN0VELGtEQTZFQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuXG5pbXBvcnQge0NsYXNzTmFtZVVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhJztcbmltcG9ydCB7XG4gIGlzRXhwb3J0U3BlY2lmaWVyTm9kZSxcbiAgaXNJbXBvcnRTcGVjaWZpZXJOb2RlLFxuICBpc05hbWVzcGFjZUltcG9ydE5vZGUsXG59IGZyb20gJy4uL3R5cGVzY3JpcHQvaW1wb3J0cyc7XG5pbXBvcnQge1xuICBpc01hdGVyaWFsRXhwb3J0RGVjbGFyYXRpb24sXG4gIGlzTWF0ZXJpYWxJbXBvcnREZWNsYXJhdGlvbixcbn0gZnJvbSAnLi4vdHlwZXNjcmlwdC9tb2R1bGUtc3BlY2lmaWVycyc7XG5pbXBvcnQge2dldFZlcnNpb25VcGdyYWRlRGF0YSwgVXBncmFkZURhdGF9IGZyb20gJy4uL3VwZ3JhZGUtZGF0YSc7XG5cbi8qKlxuICogTWlncmF0aW9uIHRoYXQgd2Fsa3MgdGhyb3VnaCBldmVyeSBpZGVudGlmaWVyIHRoYXQgaXMgcGFydCBvZiBBbmd1bGFyIE1hdGVyaWFsIG9yIHRociBDREtcbiAqIGFuZCByZXBsYWNlcyB0aGUgb3V0ZGF0ZWQgbmFtZSB3aXRoIHRoZSBuZXcgb25lIGlmIHNwZWNpZmllZCBpbiB0aGUgdXBncmFkZSBkYXRhLlxuICovXG4vLyBUT0RPOiByZXdvcmsgdGhpcyBydWxlIHRvIGlkZW50aWZ5IHN5bWJvbHMgdXNpbmcgdGhlIGltcG9ydCBpZGVudGlmaWVyIHJlc29sdmVyLiBUaGlzXG4vLyBtYWtlcyBpdCBtb3JlIHJvYnVzdCwgbGVzcyBBU1QgY29udm9sdXRlZCBhbmQgaXMgbW9yZSBUeXBlU2NyaXB0IEFTVCBpZGlvbWF0aWMuIENPTVAtMzAwLlxuZXhwb3J0IGNsYXNzIENsYXNzTmFtZXNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogQ2xhc3NOYW1lVXBncmFkZURhdGFbXSA9IGdldFZlcnNpb25VcGdyYWRlRGF0YSh0aGlzLCAnY2xhc3NOYW1lcycpO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGlkZW50aWZpZXIgbmFtZXMgdGhhdCBoYXZlIGJlZW4gaW1wb3J0ZWQgZnJvbSBgQGFuZ3VsYXIvbWF0ZXJpYWxgIG9yIGBAYW5ndWxhci9jZGtgXG4gICAqIGluIHRoZSBjdXJyZW50IHNvdXJjZSBmaWxlIGFuZCB0aGVyZWZvcmUgY2FuIGJlIGNvbnNpZGVyZWQgdHJ1c3RlZC5cbiAgICovXG4gIHRydXN0ZWRJZGVudGlmaWVyczogU2V0PHN0cmluZz4gPSBuZXcgU2V0KCk7XG5cbiAgLyoqIExpc3Qgb2YgbmFtZXNwYWNlcyB0aGF0IGhhdmUgYmVlbiBpbXBvcnRlZCBmcm9tIGBAYW5ndWxhci9tYXRlcmlhbGAgb3IgYEBhbmd1bGFyL2Nka2AuICovXG4gIHRydXN0ZWROYW1lc3BhY2VzOiBTZXQ8c3RyaW5nPiA9IG5ldyBTZXQoKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5kYXRhLmxlbmd0aCAhPT0gMDtcblxuICBvdmVycmlkZSB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc0lkZW50aWZpZXIobm9kZSkpIHtcbiAgICAgIHRoaXMuX3Zpc2l0SWRlbnRpZmllcihub2RlKTtcbiAgICB9XG4gIH1cblxuICAvKiogTWV0aG9kIHRoYXQgaXMgY2FsbGVkIGZvciBldmVyeSBpZGVudGlmaWVyIGluc2lkZSBvZiB0aGUgc3BlY2lmaWVkIHByb2plY3QuICovXG4gIHByaXZhdGUgX3Zpc2l0SWRlbnRpZmllcihpZGVudGlmaWVyOiB0cy5JZGVudGlmaWVyKSB7XG4gICAgLy8gRm9yIGlkZW50aWZpZXJzIHRoYXQgYXJlbid0IGxpc3RlZCBpbiB0aGUgY2xhc3NOYW1lIGRhdGEsIHRoZSB3aG9sZSBjaGVjayBjYW4gYmVcbiAgICAvLyBza2lwcGVkIHNhZmVseS5cbiAgICBpZiAoIXRoaXMuZGF0YS5zb21lKGRhdGEgPT4gZGF0YS5yZXBsYWNlID09PSBpZGVudGlmaWVyLnRleHQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gRm9yIG5hbWVzcGFjZSBpbXBvcnRzIHRoYXQgYXJlIHJlZmVycmluZyB0byBBbmd1bGFyIE1hdGVyaWFsIG9yIHRoZSBDREssIHdlIHN0b3JlIHRoZVxuICAgIC8vIG5hbWVzcGFjZSBuYW1lIGluIG9yZGVyIHRvIGJlIGFibGUgdG8gc2FmZWx5IGZpbmQgaWRlbnRpZmllcnMgdGhhdCBkb24ndCBiZWxvbmcgdG8gdGhlXG4gICAgLy8gZGV2ZWxvcGVyJ3MgYXBwbGljYXRpb24uXG4gICAgaWYgKGlzTmFtZXNwYWNlSW1wb3J0Tm9kZShpZGVudGlmaWVyKSAmJiBpc01hdGVyaWFsSW1wb3J0RGVjbGFyYXRpb24oaWRlbnRpZmllcikpIHtcbiAgICAgIHRoaXMudHJ1c3RlZE5hbWVzcGFjZXMuYWRkKGlkZW50aWZpZXIudGV4dCk7XG5cbiAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgIH1cblxuICAgIC8vIEZvciBleHBvcnQgZGVjbGFyYXRpb25zIHRoYXQgYXJlIHJlZmVycmluZyB0byBBbmd1bGFyIE1hdGVyaWFsIG9yIHRoZSBDREssIHRoZSBpZGVudGlmaWVyXG4gICAgLy8gY2FuIGJlIGltbWVkaWF0ZWx5IHVwZGF0ZWQgdG8gdGhlIG5ldyBuYW1lLlxuICAgIGlmIChpc0V4cG9ydFNwZWNpZmllck5vZGUoaWRlbnRpZmllcikgJiYgaXNNYXRlcmlhbEV4cG9ydERlY2xhcmF0aW9uKGlkZW50aWZpZXIpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fY3JlYXRlRmFpbHVyZVdpdGhSZXBsYWNlbWVudChpZGVudGlmaWVyKTtcbiAgICB9XG5cbiAgICAvLyBGb3IgaW1wb3J0IGRlY2xhcmF0aW9ucyB0aGF0IGFyZSByZWZlcnJpbmcgdG8gQW5ndWxhciBNYXRlcmlhbCBvciB0aGUgQ0RLLCB0aGUgbmFtZSBvZlxuICAgIC8vIHRoZSBpbXBvcnQgaWRlbnRpZmllcnMuIFRoaXMgYWxsb3dzIHVzIHRvIGlkZW50aWZ5IGlkZW50aWZpZXJzIHRoYXQgYmVsb25nIHRvIE1hdGVyaWFsIGFuZFxuICAgIC8vIHRoZSBDREssIGFuZCB3ZSB3b24ndCBhY2NpZGVudGFsbHkgdG91Y2ggYSBkZXZlbG9wZXIncyBpZGVudGlmaWVyLlxuICAgIGlmIChpc0ltcG9ydFNwZWNpZmllck5vZGUoaWRlbnRpZmllcikgJiYgaXNNYXRlcmlhbEltcG9ydERlY2xhcmF0aW9uKGlkZW50aWZpZXIpKSB7XG4gICAgICB0aGlzLnRydXN0ZWRJZGVudGlmaWVycy5hZGQoaWRlbnRpZmllci50ZXh0KTtcblxuICAgICAgcmV0dXJuIHRoaXMuX2NyZWF0ZUZhaWx1cmVXaXRoUmVwbGFjZW1lbnQoaWRlbnRpZmllcik7XG4gICAgfVxuXG4gICAgLy8gSW4gY2FzZSB0aGUgaWRlbnRpZmllciBpcyBwYXJ0IG9mIGEgcHJvcGVydHkgYWNjZXNzIGV4cHJlc3Npb24sIHdlIG5lZWQgdG8gdmVyaWZ5IHRoYXQgdGhlXG4gICAgLy8gcHJvcGVydHkgYWNjZXNzIG9yaWdpbmF0ZXMgZnJvbSBhIG5hbWVzcGFjZSB0aGF0IGhhcyBiZWVuIGltcG9ydGVkIGZyb20gTWF0ZXJpYWwgb3IgdGhlIENESy5cbiAgICBpZiAodHMuaXNQcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24oaWRlbnRpZmllci5wYXJlbnQpKSB7XG4gICAgICBjb25zdCBleHByZXNzaW9uID0gaWRlbnRpZmllci5wYXJlbnQuZXhwcmVzc2lvbjtcblxuICAgICAgaWYgKHRzLmlzSWRlbnRpZmllcihleHByZXNzaW9uKSAmJiB0aGlzLnRydXN0ZWROYW1lc3BhY2VzLmhhcyhleHByZXNzaW9uLnRleHQpKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy50cnVzdGVkSWRlbnRpZmllcnMuaGFzKGlkZW50aWZpZXIudGV4dCkpIHtcbiAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDcmVhdGVzIGEgZmFpbHVyZSBhbmQgcmVwbGFjZW1lbnQgZm9yIHRoZSBzcGVjaWZpZWQgaWRlbnRpZmllci4gKi9cbiAgcHJpdmF0ZSBfY3JlYXRlRmFpbHVyZVdpdGhSZXBsYWNlbWVudChpZGVudGlmaWVyOiB0cy5JZGVudGlmaWVyKSB7XG4gICAgY29uc3QgY2xhc3NEYXRhID0gdGhpcy5kYXRhLmZpbmQoZGF0YSA9PiBkYXRhLnJlcGxhY2UgPT09IGlkZW50aWZpZXIudGV4dCkhO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlU3lzdGVtLnJlc29sdmUoaWRlbnRpZmllci5nZXRTb3VyY2VGaWxlKCkuZmlsZU5hbWUpO1xuXG4gICAgdGhpcy5maWxlU3lzdGVtXG4gICAgICAuZWRpdChmaWxlUGF0aClcbiAgICAgIC5yZW1vdmUoaWRlbnRpZmllci5nZXRTdGFydCgpLCBpZGVudGlmaWVyLmdldFdpZHRoKCkpXG4gICAgICAuaW5zZXJ0UmlnaHQoaWRlbnRpZmllci5nZXRTdGFydCgpLCBjbGFzc0RhdGEucmVwbGFjZVdpdGgpO1xuICB9XG59XG4iXX0=
@@ -20,20 +20,17 @@ const upgrade_data_1 = require("../upgrade-data");
20
20
  // TODO: rework this rule to identify symbols using the import identifier resolver. This
21
21
  // makes it more robust, less AST convoluted and is more TypeScript AST idiomatic. COMP-300.
22
22
  class ClassNamesMigration extends migration_1.Migration {
23
- constructor() {
24
- super(...arguments);
25
- /** Change data that upgrades to the specified target version. */
26
- this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'classNames');
27
- /**
28
- * List of identifier names that have been imported from `@angular/material` or `@angular/cdk`
29
- * in the current source file and therefore can be considered trusted.
30
- */
31
- this.trustedIdentifiers = new Set();
32
- /** List of namespaces that have been imported from `@angular/material` or `@angular/cdk`. */
33
- this.trustedNamespaces = new Set();
34
- // Only enable the migration rule if there is upgrade data.
35
- this.enabled = this.data.length !== 0;
36
- }
23
+ /** Change data that upgrades to the specified target version. */
24
+ data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'classNames');
25
+ /**
26
+ * List of identifier names that have been imported from `@angular/material` or `@angular/cdk`
27
+ * in the current source file and therefore can be considered trusted.
28
+ */
29
+ trustedIdentifiers = new Set();
30
+ /** List of namespaces that have been imported from `@angular/material` or `@angular/cdk`. */
31
+ trustedNamespaces = new Set();
32
+ // Only enable the migration rule if there is upgrade data.
33
+ enabled = this.data.length !== 0;
37
34
  visitNode(node) {
38
35
  if (ts.isIdentifier(node)) {
39
36
  this._visitIdentifier(node);
@@ -88,4 +85,4 @@ class ClassNamesMigration extends migration_1.Migration {
88
85
  }
89
86
  }
90
87
  exports.ClassNamesMigration = ClassNamesMigration;
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvY2xhc3MtbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBQ2pDLDJEQUFzRDtBQUd0RCxtREFJK0I7QUFDL0IsdUVBR3lDO0FBQ3pDLGtEQUFtRTtBQUVuRTs7O0dBR0c7QUFDSCx3RkFBd0Y7QUFDeEYsNEZBQTRGO0FBQzVGLE1BQWEsbUJBQW9CLFNBQVEscUJBQXNCO0lBQS9EOztRQUNFLGlFQUFpRTtRQUNqRSxTQUFJLEdBQTJCLElBQUEsb0NBQXFCLEVBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRXpFOzs7V0FHRztRQUNILHVCQUFrQixHQUFnQixJQUFJLEdBQUcsRUFBRSxDQUFDO1FBRTVDLDZGQUE2RjtRQUM3RixzQkFBaUIsR0FBZ0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUUzQywyREFBMkQ7UUFDM0QsWUFBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQStEbkMsQ0FBQztJQTdEVSxTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVELGtGQUFrRjtJQUMxRSxnQkFBZ0IsQ0FBQyxVQUF5QjtRQUNoRCxtRkFBbUY7UUFDbkYsa0JBQWtCO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEtBQUssVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdELE9BQU87U0FDUjtRQUVELHdGQUF3RjtRQUN4Rix5RkFBeUY7UUFDekYsMkJBQTJCO1FBQzNCLElBQUksSUFBQSwrQkFBcUIsRUFBQyxVQUFVLENBQUMsSUFBSSxJQUFBLCtDQUEyQixFQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTVDLE9BQU8sSUFBSSxDQUFDLDZCQUE2QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsNEZBQTRGO1FBQzVGLDhDQUE4QztRQUM5QyxJQUFJLElBQUEsK0JBQXFCLEVBQUMsVUFBVSxDQUFDLElBQUksSUFBQSwrQ0FBMkIsRUFBQyxVQUFVLENBQUMsRUFBRTtZQUNoRixPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2RDtRQUVELHlGQUF5RjtRQUN6Riw2RkFBNkY7UUFDN0YscUVBQXFFO1FBQ3JFLElBQUksSUFBQSwrQkFBcUIsRUFBQyxVQUFVLENBQUMsSUFBSSxJQUFBLCtDQUEyQixFQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTdDLE9BQU8sSUFBSSxDQUFDLDZCQUE2QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsNkZBQTZGO1FBQzdGLCtGQUErRjtRQUMvRixJQUFJLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDcEQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7WUFFaEQsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUM5RSxPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN2RDtTQUNGO2FBQU0sSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2RCxPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2RDtJQUNILENBQUM7SUFFRCxzRUFBc0U7SUFDOUQsNkJBQTZCLENBQUMsVUFBeUI7UUFDN0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLFVBQVUsQ0FBQyxJQUFJLENBQUUsQ0FBQztRQUM1RSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFOUUsSUFBSSxDQUFDLFVBQVU7YUFDWixJQUFJLENBQUMsUUFBUSxDQUFDO2FBQ2QsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDcEQsV0FBVyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNGO0FBN0VELGtEQTZFQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuXG5pbXBvcnQge0NsYXNzTmFtZVVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhJztcbmltcG9ydCB7XG4gIGlzRXhwb3J0U3BlY2lmaWVyTm9kZSxcbiAgaXNJbXBvcnRTcGVjaWZpZXJOb2RlLFxuICBpc05hbWVzcGFjZUltcG9ydE5vZGUsXG59IGZyb20gJy4uL3R5cGVzY3JpcHQvaW1wb3J0cyc7XG5pbXBvcnQge1xuICBpc01hdGVyaWFsRXhwb3J0RGVjbGFyYXRpb24sXG4gIGlzTWF0ZXJpYWxJbXBvcnREZWNsYXJhdGlvbixcbn0gZnJvbSAnLi4vdHlwZXNjcmlwdC9tb2R1bGUtc3BlY2lmaWVycyc7XG5pbXBvcnQge2dldFZlcnNpb25VcGdyYWRlRGF0YSwgVXBncmFkZURhdGF9IGZyb20gJy4uL3VwZ3JhZGUtZGF0YSc7XG5cbi8qKlxuICogTWlncmF0aW9uIHRoYXQgd2Fsa3MgdGhyb3VnaCBldmVyeSBpZGVudGlmaWVyIHRoYXQgaXMgcGFydCBvZiBBbmd1bGFyIE1hdGVyaWFsIG9yIHRociBDREtcbiAqIGFuZCByZXBsYWNlcyB0aGUgb3V0ZGF0ZWQgbmFtZSB3aXRoIHRoZSBuZXcgb25lIGlmIHNwZWNpZmllZCBpbiB0aGUgdXBncmFkZSBkYXRhLlxuICovXG4vLyBUT0RPOiByZXdvcmsgdGhpcyBydWxlIHRvIGlkZW50aWZ5IHN5bWJvbHMgdXNpbmcgdGhlIGltcG9ydCBpZGVudGlmaWVyIHJlc29sdmVyLiBUaGlzXG4vLyBtYWtlcyBpdCBtb3JlIHJvYnVzdCwgbGVzcyBBU1QgY29udm9sdXRlZCBhbmQgaXMgbW9yZSBUeXBlU2NyaXB0IEFTVCBpZGlvbWF0aWMuIENPTVAtMzAwLlxuZXhwb3J0IGNsYXNzIENsYXNzTmFtZXNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogQ2xhc3NOYW1lVXBncmFkZURhdGFbXSA9IGdldFZlcnNpb25VcGdyYWRlRGF0YSh0aGlzLCAnY2xhc3NOYW1lcycpO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGlkZW50aWZpZXIgbmFtZXMgdGhhdCBoYXZlIGJlZW4gaW1wb3J0ZWQgZnJvbSBgQGFuZ3VsYXIvbWF0ZXJpYWxgIG9yIGBAYW5ndWxhci9jZGtgXG4gICAqIGluIHRoZSBjdXJyZW50IHNvdXJjZSBmaWxlIGFuZCB0aGVyZWZvcmUgY2FuIGJlIGNvbnNpZGVyZWQgdHJ1c3RlZC5cbiAgICovXG4gIHRydXN0ZWRJZGVudGlmaWVyczogU2V0PHN0cmluZz4gPSBuZXcgU2V0KCk7XG5cbiAgLyoqIExpc3Qgb2YgbmFtZXNwYWNlcyB0aGF0IGhhdmUgYmVlbiBpbXBvcnRlZCBmcm9tIGBAYW5ndWxhci9tYXRlcmlhbGAgb3IgYEBhbmd1bGFyL2Nka2AuICovXG4gIHRydXN0ZWROYW1lc3BhY2VzOiBTZXQ8c3RyaW5nPiA9IG5ldyBTZXQoKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5kYXRhLmxlbmd0aCAhPT0gMDtcblxuICBvdmVycmlkZSB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc0lkZW50aWZpZXIobm9kZSkpIHtcbiAgICAgIHRoaXMuX3Zpc2l0SWRlbnRpZmllcihub2RlKTtcbiAgICB9XG4gIH1cblxuICAvKiogTWV0aG9kIHRoYXQgaXMgY2FsbGVkIGZvciBldmVyeSBpZGVudGlmaWVyIGluc2lkZSBvZiB0aGUgc3BlY2lmaWVkIHByb2plY3QuICovXG4gIHByaXZhdGUgX3Zpc2l0SWRlbnRpZmllcihpZGVudGlmaWVyOiB0cy5JZGVudGlmaWVyKSB7XG4gICAgLy8gRm9yIGlkZW50aWZpZXJzIHRoYXQgYXJlbid0IGxpc3RlZCBpbiB0aGUgY2xhc3NOYW1lIGRhdGEsIHRoZSB3aG9sZSBjaGVjayBjYW4gYmVcbiAgICAvLyBza2lwcGVkIHNhZmVseS5cbiAgICBpZiAoIXRoaXMuZGF0YS5zb21lKGRhdGEgPT4gZGF0YS5yZXBsYWNlID09PSBpZGVudGlmaWVyLnRleHQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gRm9yIG5hbWVzcGFjZSBpbXBvcnRzIHRoYXQgYXJlIHJlZmVycmluZyB0byBBbmd1bGFyIE1hdGVyaWFsIG9yIHRoZSBDREssIHdlIHN0b3JlIHRoZVxuICAgIC8vIG5hbWVzcGFjZSBuYW1lIGluIG9yZGVyIHRvIGJlIGFibGUgdG8gc2FmZWx5IGZpbmQgaWRlbnRpZmllcnMgdGhhdCBkb24ndCBiZWxvbmcgdG8gdGhlXG4gICAgLy8gZGV2ZWxvcGVyJ3MgYXBwbGljYXRpb24uXG4gICAgaWYgKGlzTmFtZXNwYWNlSW1wb3J0Tm9kZShpZGVudGlmaWVyKSAmJiBpc01hdGVyaWFsSW1wb3J0RGVjbGFyYXRpb24oaWRlbnRpZmllcikpIHtcbiAgICAgIHRoaXMudHJ1c3RlZE5hbWVzcGFjZXMuYWRkKGlkZW50aWZpZXIudGV4dCk7XG5cbiAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgIH1cblxuICAgIC8vIEZvciBleHBvcnQgZGVjbGFyYXRpb25zIHRoYXQgYXJlIHJlZmVycmluZyB0byBBbmd1bGFyIE1hdGVyaWFsIG9yIHRoZSBDREssIHRoZSBpZGVudGlmaWVyXG4gICAgLy8gY2FuIGJlIGltbWVkaWF0ZWx5IHVwZGF0ZWQgdG8gdGhlIG5ldyBuYW1lLlxuICAgIGlmIChpc0V4cG9ydFNwZWNpZmllck5vZGUoaWRlbnRpZmllcikgJiYgaXNNYXRlcmlhbEV4cG9ydERlY2xhcmF0aW9uKGlkZW50aWZpZXIpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fY3JlYXRlRmFpbHVyZVdpdGhSZXBsYWNlbWVudChpZGVudGlmaWVyKTtcbiAgICB9XG5cbiAgICAvLyBGb3IgaW1wb3J0IGRlY2xhcmF0aW9ucyB0aGF0IGFyZSByZWZlcnJpbmcgdG8gQW5ndWxhciBNYXRlcmlhbCBvciB0aGUgQ0RLLCB0aGUgbmFtZSBvZlxuICAgIC8vIHRoZSBpbXBvcnQgaWRlbnRpZmllcnMuIFRoaXMgYWxsb3dzIHVzIHRvIGlkZW50aWZ5IGlkZW50aWZpZXJzIHRoYXQgYmVsb25nIHRvIE1hdGVyaWFsIGFuZFxuICAgIC8vIHRoZSBDREssIGFuZCB3ZSB3b24ndCBhY2NpZGVudGFsbHkgdG91Y2ggYSBkZXZlbG9wZXIncyBpZGVudGlmaWVyLlxuICAgIGlmIChpc0ltcG9ydFNwZWNpZmllck5vZGUoaWRlbnRpZmllcikgJiYgaXNNYXRlcmlhbEltcG9ydERlY2xhcmF0aW9uKGlkZW50aWZpZXIpKSB7XG4gICAgICB0aGlzLnRydXN0ZWRJZGVudGlmaWVycy5hZGQoaWRlbnRpZmllci50ZXh0KTtcblxuICAgICAgcmV0dXJuIHRoaXMuX2NyZWF0ZUZhaWx1cmVXaXRoUmVwbGFjZW1lbnQoaWRlbnRpZmllcik7XG4gICAgfVxuXG4gICAgLy8gSW4gY2FzZSB0aGUgaWRlbnRpZmllciBpcyBwYXJ0IG9mIGEgcHJvcGVydHkgYWNjZXNzIGV4cHJlc3Npb24sIHdlIG5lZWQgdG8gdmVyaWZ5IHRoYXQgdGhlXG4gICAgLy8gcHJvcGVydHkgYWNjZXNzIG9yaWdpbmF0ZXMgZnJvbSBhIG5hbWVzcGFjZSB0aGF0IGhhcyBiZWVuIGltcG9ydGVkIGZyb20gTWF0ZXJpYWwgb3IgdGhlIENESy5cbiAgICBpZiAodHMuaXNQcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24oaWRlbnRpZmllci5wYXJlbnQpKSB7XG4gICAgICBjb25zdCBleHByZXNzaW9uID0gaWRlbnRpZmllci5wYXJlbnQuZXhwcmVzc2lvbjtcblxuICAgICAgaWYgKHRzLmlzSWRlbnRpZmllcihleHByZXNzaW9uKSAmJiB0aGlzLnRydXN0ZWROYW1lc3BhY2VzLmhhcyhleHByZXNzaW9uLnRleHQpKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy50cnVzdGVkSWRlbnRpZmllcnMuaGFzKGlkZW50aWZpZXIudGV4dCkpIHtcbiAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDcmVhdGVzIGEgZmFpbHVyZSBhbmQgcmVwbGFjZW1lbnQgZm9yIHRoZSBzcGVjaWZpZWQgaWRlbnRpZmllci4gKi9cbiAgcHJpdmF0ZSBfY3JlYXRlRmFpbHVyZVdpdGhSZXBsYWNlbWVudChpZGVudGlmaWVyOiB0cy5JZGVudGlmaWVyKSB7XG4gICAgY29uc3QgY2xhc3NEYXRhID0gdGhpcy5kYXRhLmZpbmQoZGF0YSA9PiBkYXRhLnJlcGxhY2UgPT09IGlkZW50aWZpZXIudGV4dCkhO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlU3lzdGVtLnJlc29sdmUoaWRlbnRpZmllci5nZXRTb3VyY2VGaWxlKCkuZmlsZU5hbWUpO1xuXG4gICAgdGhpcy5maWxlU3lzdGVtXG4gICAgICAuZWRpdChmaWxlUGF0aClcbiAgICAgIC5yZW1vdmUoaWRlbnRpZmllci5nZXRTdGFydCgpLCBpZGVudGlmaWVyLmdldFdpZHRoKCkpXG4gICAgICAuaW5zZXJ0UmlnaHQoaWRlbnRpZmllci5nZXRTdGFydCgpLCBjbGFzc0RhdGEucmVwbGFjZVdpdGgpO1xuICB9XG59XG4iXX0=
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvY2xhc3MtbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBQ2pDLDJEQUFzRDtBQUd0RCxtREFJK0I7QUFDL0IsdUVBR3lDO0FBQ3pDLGtEQUFtRTtBQUVuRTs7O0dBR0c7QUFDSCx3RkFBd0Y7QUFDeEYsNEZBQTRGO0FBQzVGLE1BQWEsbUJBQW9CLFNBQVEscUJBQXNCO0lBQzdELGlFQUFpRTtJQUNqRSxJQUFJLEdBQTJCLElBQUEsb0NBQXFCLEVBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBRXpFOzs7T0FHRztJQUNILGtCQUFrQixHQUFnQixJQUFJLEdBQUcsRUFBRSxDQUFDO0lBRTVDLDZGQUE2RjtJQUM3RixpQkFBaUIsR0FBZ0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUUzQywyREFBMkQ7SUFDM0QsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUV4QixTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVELGtGQUFrRjtJQUMxRSxnQkFBZ0IsQ0FBQyxVQUF5QjtRQUNoRCxtRkFBbUY7UUFDbkYsa0JBQWtCO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEtBQUssVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdELE9BQU87U0FDUjtRQUVELHdGQUF3RjtRQUN4Rix5RkFBeUY7UUFDekYsMkJBQTJCO1FBQzNCLElBQUksSUFBQSwrQkFBcUIsRUFBQyxVQUFVLENBQUMsSUFBSSxJQUFBLCtDQUEyQixFQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTVDLE9BQU8sSUFBSSxDQUFDLDZCQUE2QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsNEZBQTRGO1FBQzVGLDhDQUE4QztRQUM5QyxJQUFJLElBQUEsK0JBQXFCLEVBQUMsVUFBVSxDQUFDLElBQUksSUFBQSwrQ0FBMkIsRUFBQyxVQUFVLENBQUMsRUFBRTtZQUNoRixPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2RDtRQUVELHlGQUF5RjtRQUN6Riw2RkFBNkY7UUFDN0YscUVBQXFFO1FBQ3JFLElBQUksSUFBQSwrQkFBcUIsRUFBQyxVQUFVLENBQUMsSUFBSSxJQUFBLCtDQUEyQixFQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTdDLE9BQU8sSUFBSSxDQUFDLDZCQUE2QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsNkZBQTZGO1FBQzdGLCtGQUErRjtRQUMvRixJQUFJLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDcEQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7WUFFaEQsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUM5RSxPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN2RDtTQUNGO2FBQU0sSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2RCxPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2RDtJQUNILENBQUM7SUFFRCxzRUFBc0U7SUFDOUQsNkJBQTZCLENBQUMsVUFBeUI7UUFDN0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLFVBQVUsQ0FBQyxJQUFJLENBQUUsQ0FBQztRQUM1RSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFOUUsSUFBSSxDQUFDLFVBQVU7YUFDWixJQUFJLENBQUMsUUFBUSxDQUFDO2FBQ2QsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDcEQsV0FBVyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNGO0FBN0VELGtEQTZFQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuXG5pbXBvcnQge0NsYXNzTmFtZVVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhJztcbmltcG9ydCB7XG4gIGlzRXhwb3J0U3BlY2lmaWVyTm9kZSxcbiAgaXNJbXBvcnRTcGVjaWZpZXJOb2RlLFxuICBpc05hbWVzcGFjZUltcG9ydE5vZGUsXG59IGZyb20gJy4uL3R5cGVzY3JpcHQvaW1wb3J0cyc7XG5pbXBvcnQge1xuICBpc01hdGVyaWFsRXhwb3J0RGVjbGFyYXRpb24sXG4gIGlzTWF0ZXJpYWxJbXBvcnREZWNsYXJhdGlvbixcbn0gZnJvbSAnLi4vdHlwZXNjcmlwdC9tb2R1bGUtc3BlY2lmaWVycyc7XG5pbXBvcnQge2dldFZlcnNpb25VcGdyYWRlRGF0YSwgVXBncmFkZURhdGF9IGZyb20gJy4uL3VwZ3JhZGUtZGF0YSc7XG5cbi8qKlxuICogTWlncmF0aW9uIHRoYXQgd2Fsa3MgdGhyb3VnaCBldmVyeSBpZGVudGlmaWVyIHRoYXQgaXMgcGFydCBvZiBBbmd1bGFyIE1hdGVyaWFsIG9yIHRociBDREtcbiAqIGFuZCByZXBsYWNlcyB0aGUgb3V0ZGF0ZWQgbmFtZSB3aXRoIHRoZSBuZXcgb25lIGlmIHNwZWNpZmllZCBpbiB0aGUgdXBncmFkZSBkYXRhLlxuICovXG4vLyBUT0RPOiByZXdvcmsgdGhpcyBydWxlIHRvIGlkZW50aWZ5IHN5bWJvbHMgdXNpbmcgdGhlIGltcG9ydCBpZGVudGlmaWVyIHJlc29sdmVyLiBUaGlzXG4vLyBtYWtlcyBpdCBtb3JlIHJvYnVzdCwgbGVzcyBBU1QgY29udm9sdXRlZCBhbmQgaXMgbW9yZSBUeXBlU2NyaXB0IEFTVCBpZGlvbWF0aWMuIENPTVAtMzAwLlxuZXhwb3J0IGNsYXNzIENsYXNzTmFtZXNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogQ2xhc3NOYW1lVXBncmFkZURhdGFbXSA9IGdldFZlcnNpb25VcGdyYWRlRGF0YSh0aGlzLCAnY2xhc3NOYW1lcycpO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGlkZW50aWZpZXIgbmFtZXMgdGhhdCBoYXZlIGJlZW4gaW1wb3J0ZWQgZnJvbSBgQGFuZ3VsYXIvbWF0ZXJpYWxgIG9yIGBAYW5ndWxhci9jZGtgXG4gICAqIGluIHRoZSBjdXJyZW50IHNvdXJjZSBmaWxlIGFuZCB0aGVyZWZvcmUgY2FuIGJlIGNvbnNpZGVyZWQgdHJ1c3RlZC5cbiAgICovXG4gIHRydXN0ZWRJZGVudGlmaWVyczogU2V0PHN0cmluZz4gPSBuZXcgU2V0KCk7XG5cbiAgLyoqIExpc3Qgb2YgbmFtZXNwYWNlcyB0aGF0IGhhdmUgYmVlbiBpbXBvcnRlZCBmcm9tIGBAYW5ndWxhci9tYXRlcmlhbGAgb3IgYEBhbmd1bGFyL2Nka2AuICovXG4gIHRydXN0ZWROYW1lc3BhY2VzOiBTZXQ8c3RyaW5nPiA9IG5ldyBTZXQoKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5kYXRhLmxlbmd0aCAhPT0gMDtcblxuICBvdmVycmlkZSB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc0lkZW50aWZpZXIobm9kZSkpIHtcbiAgICAgIHRoaXMuX3Zpc2l0SWRlbnRpZmllcihub2RlKTtcbiAgICB9XG4gIH1cblxuICAvKiogTWV0aG9kIHRoYXQgaXMgY2FsbGVkIGZvciBldmVyeSBpZGVudGlmaWVyIGluc2lkZSBvZiB0aGUgc3BlY2lmaWVkIHByb2plY3QuICovXG4gIHByaXZhdGUgX3Zpc2l0SWRlbnRpZmllcihpZGVudGlmaWVyOiB0cy5JZGVudGlmaWVyKSB7XG4gICAgLy8gRm9yIGlkZW50aWZpZXJzIHRoYXQgYXJlbid0IGxpc3RlZCBpbiB0aGUgY2xhc3NOYW1lIGRhdGEsIHRoZSB3aG9sZSBjaGVjayBjYW4gYmVcbiAgICAvLyBza2lwcGVkIHNhZmVseS5cbiAgICBpZiAoIXRoaXMuZGF0YS5zb21lKGRhdGEgPT4gZGF0YS5yZXBsYWNlID09PSBpZGVudGlmaWVyLnRleHQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gRm9yIG5hbWVzcGFjZSBpbXBvcnRzIHRoYXQgYXJlIHJlZmVycmluZyB0byBBbmd1bGFyIE1hdGVyaWFsIG9yIHRoZSBDREssIHdlIHN0b3JlIHRoZVxuICAgIC8vIG5hbWVzcGFjZSBuYW1lIGluIG9yZGVyIHRvIGJlIGFibGUgdG8gc2FmZWx5IGZpbmQgaWRlbnRpZmllcnMgdGhhdCBkb24ndCBiZWxvbmcgdG8gdGhlXG4gICAgLy8gZGV2ZWxvcGVyJ3MgYXBwbGljYXRpb24uXG4gICAgaWYgKGlzTmFtZXNwYWNlSW1wb3J0Tm9kZShpZGVudGlmaWVyKSAmJiBpc01hdGVyaWFsSW1wb3J0RGVjbGFyYXRpb24oaWRlbnRpZmllcikpIHtcbiAgICAgIHRoaXMudHJ1c3RlZE5hbWVzcGFjZXMuYWRkKGlkZW50aWZpZXIudGV4dCk7XG5cbiAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgIH1cblxuICAgIC8vIEZvciBleHBvcnQgZGVjbGFyYXRpb25zIHRoYXQgYXJlIHJlZmVycmluZyB0byBBbmd1bGFyIE1hdGVyaWFsIG9yIHRoZSBDREssIHRoZSBpZGVudGlmaWVyXG4gICAgLy8gY2FuIGJlIGltbWVkaWF0ZWx5IHVwZGF0ZWQgdG8gdGhlIG5ldyBuYW1lLlxuICAgIGlmIChpc0V4cG9ydFNwZWNpZmllck5vZGUoaWRlbnRpZmllcikgJiYgaXNNYXRlcmlhbEV4cG9ydERlY2xhcmF0aW9uKGlkZW50aWZpZXIpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fY3JlYXRlRmFpbHVyZVdpdGhSZXBsYWNlbWVudChpZGVudGlmaWVyKTtcbiAgICB9XG5cbiAgICAvLyBGb3IgaW1wb3J0IGRlY2xhcmF0aW9ucyB0aGF0IGFyZSByZWZlcnJpbmcgdG8gQW5ndWxhciBNYXRlcmlhbCBvciB0aGUgQ0RLLCB0aGUgbmFtZSBvZlxuICAgIC8vIHRoZSBpbXBvcnQgaWRlbnRpZmllcnMuIFRoaXMgYWxsb3dzIHVzIHRvIGlkZW50aWZ5IGlkZW50aWZpZXJzIHRoYXQgYmVsb25nIHRvIE1hdGVyaWFsIGFuZFxuICAgIC8vIHRoZSBDREssIGFuZCB3ZSB3b24ndCBhY2NpZGVudGFsbHkgdG91Y2ggYSBkZXZlbG9wZXIncyBpZGVudGlmaWVyLlxuICAgIGlmIChpc0ltcG9ydFNwZWNpZmllck5vZGUoaWRlbnRpZmllcikgJiYgaXNNYXRlcmlhbEltcG9ydERlY2xhcmF0aW9uKGlkZW50aWZpZXIpKSB7XG4gICAgICB0aGlzLnRydXN0ZWRJZGVudGlmaWVycy5hZGQoaWRlbnRpZmllci50ZXh0KTtcblxuICAgICAgcmV0dXJuIHRoaXMuX2NyZWF0ZUZhaWx1cmVXaXRoUmVwbGFjZW1lbnQoaWRlbnRpZmllcik7XG4gICAgfVxuXG4gICAgLy8gSW4gY2FzZSB0aGUgaWRlbnRpZmllciBpcyBwYXJ0IG9mIGEgcHJvcGVydHkgYWNjZXNzIGV4cHJlc3Npb24sIHdlIG5lZWQgdG8gdmVyaWZ5IHRoYXQgdGhlXG4gICAgLy8gcHJvcGVydHkgYWNjZXNzIG9yaWdpbmF0ZXMgZnJvbSBhIG5hbWVzcGFjZSB0aGF0IGhhcyBiZWVuIGltcG9ydGVkIGZyb20gTWF0ZXJpYWwgb3IgdGhlIENESy5cbiAgICBpZiAodHMuaXNQcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24oaWRlbnRpZmllci5wYXJlbnQpKSB7XG4gICAgICBjb25zdCBleHByZXNzaW9uID0gaWRlbnRpZmllci5wYXJlbnQuZXhwcmVzc2lvbjtcblxuICAgICAgaWYgKHRzLmlzSWRlbnRpZmllcihleHByZXNzaW9uKSAmJiB0aGlzLnRydXN0ZWROYW1lc3BhY2VzLmhhcyhleHByZXNzaW9uLnRleHQpKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy50cnVzdGVkSWRlbnRpZmllcnMuaGFzKGlkZW50aWZpZXIudGV4dCkpIHtcbiAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVGYWlsdXJlV2l0aFJlcGxhY2VtZW50KGlkZW50aWZpZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDcmVhdGVzIGEgZmFpbHVyZSBhbmQgcmVwbGFjZW1lbnQgZm9yIHRoZSBzcGVjaWZpZWQgaWRlbnRpZmllci4gKi9cbiAgcHJpdmF0ZSBfY3JlYXRlRmFpbHVyZVdpdGhSZXBsYWNlbWVudChpZGVudGlmaWVyOiB0cy5JZGVudGlmaWVyKSB7XG4gICAgY29uc3QgY2xhc3NEYXRhID0gdGhpcy5kYXRhLmZpbmQoZGF0YSA9PiBkYXRhLnJlcGxhY2UgPT09IGlkZW50aWZpZXIudGV4dCkhO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlU3lzdGVtLnJlc29sdmUoaWRlbnRpZmllci5nZXRTb3VyY2VGaWxlKCkuZmlsZU5hbWUpO1xuXG4gICAgdGhpcy5maWxlU3lzdGVtXG4gICAgICAuZWRpdChmaWxlUGF0aClcbiAgICAgIC5yZW1vdmUoaWRlbnRpZmllci5nZXRTdGFydCgpLCBpZGVudGlmaWVyLmdldFdpZHRoKCkpXG4gICAgICAuaW5zZXJ0UmlnaHQoaWRlbnRpZmllci5nZXRTdGFydCgpLCBjbGFzc0RhdGEucmVwbGFjZVdpdGgpO1xuICB9XG59XG4iXX0=
@@ -28,15 +28,12 @@ const signatureErrorDiagnostics = [
28
28
  * the parameter type signature is invalid and needs to be updated manually.
29
29
  */
30
30
  class ConstructorSignatureMigration extends migration_1.Migration {
31
- constructor() {
32
- super(...arguments);
33
- // Note that the data for this rule is not distinguished based on the target version because
34
- // we don't keep track of the new signature and don't want to update incrementally.
35
- // See: https://github.com/angular/components/pull/12970#issuecomment-418337566
36
- this.data = (0, version_changes_1.getAllChanges)(this.upgradeData.constructorChecks);
37
- // Only enable the migration rule if there is upgrade data.
38
- this.enabled = this.data.length !== 0;
39
- }
31
+ // Note that the data for this rule is not distinguished based on the target version because
32
+ // we don't keep track of the new signature and don't want to update incrementally.
33
+ // See: https://github.com/angular/components/pull/12970#issuecomment-418337566
34
+ data = (0, version_changes_1.getAllChanges)(this.upgradeData.constructorChecks);
35
+ // Only enable the migration rule if there is upgrade data.
36
+ enabled = this.data.length !== 0;
40
37
  visitNode(node) {
41
38
  if (ts.isSourceFile(node)) {
42
39
  this._visitSourceFile(node);
@@ -136,4 +133,4 @@ function getClassDeclarationOfSignature(signature) {
136
133
  }
137
134
  return null;
138
135
  }
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0b3Itc2lnbmF0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL25nLXVwZGF0ZS9taWdyYXRpb25zL2NvbnN0cnVjdG9yLXNpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCxpQ0FBaUM7QUFDakMsMkRBQXNEO0FBQ3RELHVFQUFnRTtBQUdoRTs7Ozs7R0FLRztBQUNILE1BQU0seUJBQXlCLEdBQUc7SUFDaEMsd0NBQXdDO0lBQ3hDLElBQUk7SUFDSixrREFBa0Q7SUFDbEQsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSTtDQUN2QixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBYSw2QkFBOEIsU0FBUSxxQkFBc0I7SUFBekU7O1FBQ0UsNEZBQTRGO1FBQzVGLG1GQUFtRjtRQUNuRiwrRUFBK0U7UUFDL0UsU0FBSSxHQUFHLElBQUEsK0JBQWEsRUFBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFekQsMkRBQTJEO1FBQzNELFlBQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUEwRW5DLENBQUM7SUF4RVUsU0FBUyxDQUFDLElBQWE7UUFDOUIsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNLLGdCQUFnQixDQUFDLFVBQXlCO1FBQ2hELGtFQUFrRTtRQUNsRSxNQUFNLFdBQVcsR0FBRyxFQUFFO2FBQ25CLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDO2FBQy9DLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLHlCQUF5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O0lBQ3BGLG1EQUFtRDtJQUNuRCxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ1QsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFO1FBQzdDLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFO1lBQy9CLE9BQU8sSUFBSSxDQUFDO1NBQ2I7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtnZXRBbGxDaGFuZ2VzfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC92ZXJzaW9uLWNoYW5nZXMnO1xuaW1wb3J0IHtVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBMaXN0IG9mIGRpYWdub3N0aWMgY29kZXMgdGhhdCByZWZlciB0byBwcmUtZW1pdCBkaWFnbm9zdGljcyB3aGljaCBpbmRpY2F0ZSBpbnZhbGlkXG4gKiBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIHNpZ25hdHVyZXMuIFNlZSB0aGUgbGlzdCBvZiBkaWFnbm9zdGljcyBoZXJlOlxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWNyb3NvZnQvVHlwZVNjcmlwdC9ibG9iL21hc3Rlci9zcmMvY29tcGlsZXIvZGlhZ25vc3RpY01lc3NhZ2VzLmpzb25cbiAqL1xuY29uc3Qgc2lnbmF0dXJlRXJyb3JEaWFnbm9zdGljcyA9IFtcbiAgLy8gVHlwZSBub3QgYXNzaWduYWJsZSBlcnJvciBkaWFnbm9zdGljLlxuICAyMzQ1LFxuICAvLyBDb25zdHJ1Y3RvciBhcmd1bWVudCBsZW5ndGggaW52YWxpZCBkaWFnbm9zdGljc1xuICAyNTU0LCAyNTU1LCAyNTU2LCAyNTU3LFxuXTtcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB2aXNpdHMgZXZlcnkgVHlwZVNjcmlwdCBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIGFuZCBjaGVja3MgaWZcbiAqIHRoZSBwYXJhbWV0ZXIgdHlwZSBzaWduYXR1cmUgaXMgaW52YWxpZCBhbmQgbmVlZHMgdG8gYmUgdXBkYXRlZCBtYW51YWxseS5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbnN0cnVjdG9yU2lnbmF0dXJlTWlncmF0aW9uIGV4dGVuZHMgTWlncmF0aW9uPFVwZ3JhZGVEYXRhPiB7XG4gIC8vIE5vdGUgdGhhdCB0aGUgZGF0YSBmb3IgdGhpcyBydWxlIGlzIG5vdCBkaXN0aW5ndWlzaGVkIGJhc2VkIG9uIHRoZSB0YXJnZXQgdmVyc2lvbiBiZWNhdXNlXG4gIC8vIHdlIGRvbid0IGtlZXAgdHJhY2sgb2YgdGhlIG5ldyBzaWduYXR1cmUgYW5kIGRvbid0IHdhbnQgdG8gdXBkYXRlIGluY3JlbWVudGFsbHkuXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9wdWxsLzEyOTcwI2lzc3VlY29tbWVudC00MTgzMzc1NjZcbiAgZGF0YSA9IGdldEFsbENoYW5nZXModGhpcy51cGdyYWRlRGF0YS5jb25zdHJ1Y3RvckNoZWNrcyk7XG5cbiAgLy8gT25seSBlbmFibGUgdGhlIG1pZ3JhdGlvbiBydWxlIGlmIHRoZXJlIGlzIHVwZ3JhZGUgZGF0YS5cbiAgZW5hYmxlZCA9IHRoaXMuZGF0YS5sZW5ndGggIT09IDA7XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNTb3VyY2VGaWxlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFNvdXJjZUZpbGUobm9kZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0aGF0IHdpbGwgYmUgY2FsbGVkIGZvciBlYWNoIHNvdXJjZSBmaWxlIG9mIHRoZSB1cGdyYWRlIHByb2plY3QuIEluIG9yZGVyIHRvXG4gICAqIHByb3Blcmx5IGRldGVybWluZSBpbnZhbGlkIGNvbnN0cnVjdG9yIHNpZ25hdHVyZXMsIHdlIHRha2UgYWR2YW50YWdlIG9mIHRoZSBwcmUtZW1pdFxuICAgKiBkaWFnbm9zdGljcyBmcm9tIFR5cGVTY3JpcHQuXG4gICAqXG4gICAqIEJ5IHVzaW5nIHRoZSBkaWFnbm9zdGljcywgdGhlIG1pZ3JhdGlvbiBjYW4gaGFuZGxlIHR5cGUgYXNzaWduYWJpbGl0eS4gTm90IHVzaW5nXG4gICAqIGRpYWdub3N0aWNzIHdvdWxkIG1lYW4gdGhhdCB3ZSBuZWVkIHRvIHVzZSBzaW1wbGUgdHlwZSBlcXVhbGl0eSBjaGVja2luZyB3aGljaCBpc1xuICAgKiB0b28gc3RyaWN0LiBTZWUgcmVsYXRlZCBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL01pY3Jvc29mdC9UeXBlU2NyaXB0L2lzc3Vlcy85ODc5XG4gICAqL1xuICBwcml2YXRlIF92aXNpdFNvdXJjZUZpbGUoc291cmNlRmlsZTogdHMuU291cmNlRmlsZSkge1xuICAgIC8vIExpc3Qgb2YgY2xhc3NlcyBvZiB3aGljaCB0aGUgY29uc3RydWN0b3Igc2lnbmF0dXJlIGhhcyBjaGFuZ2VkLlxuICAgIGNvbnN0IGRpYWdub3N0aWNzID0gdHNcbiAgICAgIC5nZXRQcmVFbWl0RGlhZ25vc3RpY3ModGhpcy5wcm9ncmFtLCBzb3VyY2VGaWxlKVxuICAgICAgLmZpbHRlcihkaWFnbm9zdGljID0+IHNpZ25hdHVyZUVycm9yRGlhZ25vc3RpY3MuaW5jbHVkZXMoZGlhZ25vc3RpYy5jb2RlKSlcbiAgICAgIC5maWx0ZXIoZGlhZ25vc3RpYyA9PiBkaWFnbm9zdGljLnN0YXJ0ICE9PSB1bmRlZmluZWQpO1xuXG4gICAgZm9yIChjb25zdCBkaWFnbm9zdGljIG9mIGRpYWdub3N0aWNzKSB7XG4gICAgICBjb25zdCBub2RlID0gZmluZENvbnN0cnVjdG9yTm9kZShkaWFnbm9zdGljLCBzb3VyY2VGaWxlKTtcblxuICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGFzc1R5cGUgPSB0aGlzLnR5cGVDaGVja2VyLmdldFR5cGVBdExvY2F0aW9uKG5vZGUuZXhwcmVzc2lvbik7XG4gICAgICBjb25zdCBjbGFzc05hbWUgPSBjbGFzc1R5cGUuc3ltYm9sICYmIGNsYXNzVHlwZS5zeW1ib2wubmFtZTtcbiAgICAgIGNvbnN0IGlzTmV3RXhwcmVzc2lvbiA9IHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKTtcblxuICAgICAgLy8gRGV0ZXJtaW5lIHRoZSBjbGFzcyBuYW1lcyBvZiB0aGUgYWN0dWFsIGNvbnN0cnVjdCBzaWduYXR1cmVzIGJlY2F1c2Ugd2UgY2Fubm90IGFzc3VtZSB0aGF0XG4gICAgICAvLyB0aGUgZGlhZ25vc3RpYyByZWZlcnMgdG8gYSBjb25zdHJ1Y3RvciBvZiB0aGUgYWN0dWFsIGV4cHJlc3Npb24uIEluIGNhc2UgdGhlIGNvbnN0cnVjdG9yXG4gICAgICAvLyBpcyBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gZGV0ZWN0IHRoYXQgdGhlIG93bmVyLWNsYXNzIG9mIHRoZSBjb25zdHJ1Y3RvciBpcyBhZGRlZCB0byB0aGVcbiAgICAgIC8vIGNvbnN0cnVjdG9yIGNoZWNrcyB1cGdyYWRlIGRhdGEuIGUuZy4gYGNsYXNzIEN1c3RvbUNhbGVuZGFyIGV4dGVuZHMgTWF0Q2FsZW5kYXIge31gLlxuICAgICAgY29uc3Qgc2lnbmF0dXJlQ2xhc3NOYW1lcyA9IGNsYXNzVHlwZVxuICAgICAgICAuZ2V0Q29uc3RydWN0U2lnbmF0dXJlcygpXG4gICAgICAgIC5tYXAoc2lnbmF0dXJlID0+IGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmUpKVxuICAgICAgICAubWFwKGRlY2xhcmF0aW9uID0+IChkZWNsYXJhdGlvbiAmJiBkZWNsYXJhdGlvbi5uYW1lID8gZGVjbGFyYXRpb24ubmFtZS50ZXh0IDogbnVsbCkpXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbik7XG5cbiAgICAgIC8vIEJlc2lkZXMgY2hlY2tpbmcgdGhlIHNpZ25hdHVyZSBjbGFzcyBuYW1lcywgd2UgbmVlZCB0byBjaGVjayB0aGUgYWN0dWFsIGNsYXNzIG5hbWUgYmVjYXVzZVxuICAgICAgLy8gdGhlcmUgY2FuIGJlIGNsYXNzZXMgd2l0aG91dCBhbiBleHBsaWNpdCBjb25zdHJ1Y3Rvci5cbiAgICAgIGlmIChcbiAgICAgICAgIXRoaXMuZGF0YS5pbmNsdWRlcyhjbGFzc05hbWUpICYmXG4gICAgICAgICFzaWduYXR1cmVDbGFzc05hbWVzLnNvbWUobmFtZSA9PiB0aGlzLmRhdGEuaW5jbHVkZXMobmFtZSEpKVxuICAgICAgKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGFzc1NpZ25hdHVyZXMgPSBjbGFzc1R5cGVcbiAgICAgICAgLmdldENvbnN0cnVjdFNpZ25hdHVyZXMoKVxuICAgICAgICAubWFwKHNpZ25hdHVyZSA9PiBnZXRQYXJhbWV0ZXJUeXBlc0Zyb21TaWduYXR1cmUoc2lnbmF0dXJlLCB0aGlzLnR5cGVDaGVja2VyKSk7XG5cbiAgICAgIGNvbnN0IGV4cHJlc3Npb25OYW1lID0gaXNOZXdFeHByZXNzaW9uID8gYG5ldyAke2NsYXNzTmFtZX1gIDogJ3N1cGVyJztcbiAgICAgIGNvbnN0IHNpZ25hdHVyZXMgPSBjbGFzc1NpZ25hdHVyZXNcbiAgICAgICAgLm1hcChzaWduYXR1cmUgPT5cbiAgICAgICAgICBzaWduYXR1cmUubWFwKHQgPT4gKHQgPT09IG51bGwgPyAnYW55JyA6IHRoaXMudHlwZUNoZWNrZXIudHlwZVRvU3RyaW5nKHQpKSksXG4gICAgICAgIClcbiAgICAgICAgLm1hcChzaWduYXR1cmUgPT4gYCR7ZXhwcmVzc2lvbk5hbWV9KCR7c2lnbmF0dXJlLmpvaW4oJywgJyl9KWApXG4gICAgICAgIC5qb2luKCcgb3IgJyk7XG5cbiAgICAgIHRoaXMuY3JlYXRlRmFpbHVyZUF0Tm9kZShcbiAgICAgICAgbm9kZSxcbiAgICAgICAgYEZvdW5kIFwiJHtjbGFzc05hbWV9XCIgY29uc3RydWN0ZWQgd2l0aCBgICtcbiAgICAgICAgICBgYW4gaW52YWxpZCBzaWduYXR1cmUuIFBsZWFzZSBtYW51YWxseSB1cGRhdGUgdGhlICR7ZXhwcmVzc2lvbk5hbWV9IGV4cHJlc3Npb24gdG8gYCArXG4gICAgICAgICAgYG1hdGNoIHRoZSBuZXcgc2lnbmF0dXJlJHtjbGFzc1NpZ25hdHVyZXMubGVuZ3RoID4gMSA/ICdzJyA6ICcnfTogJHtzaWduYXR1cmVzfWAsXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG4vKiogUmVzb2x2ZXMgdGhlIHR5cGUgZm9yIGVhY2ggcGFyYW1ldGVyIGluIHRoZSBzcGVjaWZpZWQgc2lnbmF0dXJlLiAqL1xuZnVuY3Rpb24gZ2V0UGFyYW1ldGVyVHlwZXNGcm9tU2lnbmF0dXJlKFxuICBzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSxcbiAgdHlwZUNoZWNrZXI6IHRzLlR5cGVDaGVja2VyLFxuKTogKHRzLlR5cGUgfCBudWxsKVtdIHtcbiAgcmV0dXJuIHNpZ25hdHVyZVxuICAgIC5nZXRQYXJhbWV0ZXJzKClcbiAgICAubWFwKHBhcmFtID0+XG4gICAgICBwYXJhbS5kZWNsYXJhdGlvbnMgPyB0eXBlQ2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihwYXJhbS5kZWNsYXJhdGlvbnNbMF0pIDogbnVsbCxcbiAgICApO1xufVxuXG4vKipcbiAqIFdhbGtzIHRocm91Z2ggZWFjaCBub2RlIG9mIGEgc291cmNlIGZpbGUgaW4gb3JkZXIgdG8gZmluZCBhIG5ldy1leHByZXNzaW9uIG5vZGUgb3Igc3VwZXItY2FsbFxuICogZXhwcmVzc2lvbiBub2RlIHRoYXQgaXMgY2FwdHVyZWQgYnkgdGhlIHNwZWNpZmllZCBkaWFnbm9zdGljLlxuICovXG5mdW5jdGlvbiBmaW5kQ29uc3RydWN0b3JOb2RlKFxuICBkaWFnbm9zdGljOiB0cy5EaWFnbm9zdGljLFxuICBzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlLFxuKTogdHMuQ2FsbEV4cHJlc3Npb24gfCB0cy5OZXdFeHByZXNzaW9uIHwgbnVsbCB7XG4gIGxldCByZXNvbHZlZE5vZGU6IHRzLk5vZGUgfCBudWxsID0gbnVsbDtcblxuICBjb25zdCBfdmlzaXROb2RlID0gKG5vZGU6IHRzLk5vZGUpID0+IHtcbiAgICAvLyBDaGVjayB3aGV0aGVyIHRoZSBjdXJyZW50IG5vZGUgY29udGFpbnMgdGhlIGRpYWdub3N0aWMuIElmIHRoZSBub2RlIGNvbnRhaW5zIHRoZSBkaWFnbm9zdGljLFxuICAgIC8vIHdhbGsgZGVlcGVyIGluIG9yZGVyIHRvIGZpbmQgYWxsIGNvbnN0cnVjdG9yIGV4cHJlc3Npb24gbm9kZXMuXG4gICAgaWYgKG5vZGUuZ2V0U3RhcnQoKSA8PSBkaWFnbm9zdGljLnN0YXJ0ISAmJiBub2RlLmdldEVuZCgpID49IGRpYWdub3N0aWMuc3RhcnQhKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKSB8fFxuICAgICAgICAodHMuaXNDYWxsRXhwcmVzc2lvbihub2RlKSAmJiBub2RlLmV4cHJlc3Npb24ua2luZCA9PT0gdHMuU3ludGF4S2luZC5TdXBlcktleXdvcmQpXG4gICAgICApIHtcbiAgICAgICAgcmVzb2x2ZWROb2RlID0gbm9kZTtcbiAgICAgIH1cblxuICAgICAgdHMuZm9yRWFjaENoaWxkKG5vZGUsIF92aXNpdE5vZGUpO1xuICAgIH1cbiAgfTtcblxuICB0cy5mb3JFYWNoQ2hpbGQoc291cmNlRmlsZSwgX3Zpc2l0Tm9kZSk7XG5cbiAgcmV0dXJuIHJlc29sdmVkTm9kZTtcbn1cblxuLyoqIERldGVybWluZXMgdGhlIGNsYXNzIGRlY2xhcmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgY29uc3RydWN0IHNpZ25hdHVyZS4gKi9cbmZ1bmN0aW9uIGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSk6IHRzLkNsYXNzRGVjbGFyYXRpb24gfCBudWxsIHtcbiAgbGV0IG5vZGU6IHRzLk5vZGUgPSBzaWduYXR1cmUuZ2V0RGVjbGFyYXRpb24oKTtcbiAgLy8gSGFuZGxlIHNpZ25hdHVyZXMgd2hpY2ggZG9uJ3QgaGF2ZSBhbiBhY3R1YWwgZGVjbGFyYXRpb24uIFRoaXMgaGFwcGVucyBpZiBhIGNsYXNzXG4gIC8vIGRvZXMgbm90IGhhdmUgYW4gZXhwbGljaXRseSB3cml0dGVuIGNvbnN0cnVjdG9yLlxuICBpZiAoIW5vZGUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICB3aGlsZSAoIXRzLmlzU291cmNlRmlsZSgobm9kZSA9IG5vZGUucGFyZW50KSkpIHtcbiAgICBpZiAodHMuaXNDbGFzc0RlY2xhcmF0aW9uKG5vZGUpKSB7XG4gICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG4iXX0=
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0b3Itc2lnbmF0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL25nLXVwZGF0ZS9taWdyYXRpb25zL2NvbnN0cnVjdG9yLXNpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCxpQ0FBaUM7QUFDakMsMkRBQXNEO0FBQ3RELHVFQUFnRTtBQUdoRTs7Ozs7R0FLRztBQUNILE1BQU0seUJBQXlCLEdBQUc7SUFDaEMsd0NBQXdDO0lBQ3hDLElBQUk7SUFDSixrREFBa0Q7SUFDbEQsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSTtDQUN2QixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBYSw2QkFBOEIsU0FBUSxxQkFBc0I7SUFDdkUsNEZBQTRGO0lBQzVGLG1GQUFtRjtJQUNuRiwrRUFBK0U7SUFDL0UsSUFBSSxHQUFHLElBQUEsK0JBQWEsRUFBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFekQsMkRBQTJEO0lBQzNELE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFFeEIsU0FBUyxDQUFDLElBQWE7UUFDOUIsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNLLGdCQUFnQixDQUFDLFVBQXlCO1FBQ2hELGtFQUFrRTtRQUNsRSxNQUFNLFdBQVcsR0FBRyxFQUFFO2FBQ25CLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDO2FBQy9DLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQyxV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RCxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ1QsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFO1FBQzdDLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFO1lBQy9CLE9BQU8sSUFBSSxDQUFDO1NBQ2I7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtnZXRBbGxDaGFuZ2VzfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC92ZXJzaW9uLWNoYW5nZXMnO1xuaW1wb3J0IHtVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBMaXN0IG9mIGRpYWdub3N0aWMgY29kZXMgdGhhdCByZWZlciB0byBwcmUtZW1pdCBkaWFnbm9zdGljcyB3aGljaCBpbmRpY2F0ZSBpbnZhbGlkXG4gKiBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIHNpZ25hdHVyZXMuIFNlZSB0aGUgbGlzdCBvZiBkaWFnbm9zdGljcyBoZXJlOlxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWNyb3NvZnQvVHlwZVNjcmlwdC9ibG9iL21hc3Rlci9zcmMvY29tcGlsZXIvZGlhZ25vc3RpY01lc3NhZ2VzLmpzb25cbiAqL1xuY29uc3Qgc2lnbmF0dXJlRXJyb3JEaWFnbm9zdGljcyA9IFtcbiAgLy8gVHlwZSBub3QgYXNzaWduYWJsZSBlcnJvciBkaWFnbm9zdGljLlxuICAyMzQ1LFxuICAvLyBDb25zdHJ1Y3RvciBhcmd1bWVudCBsZW5ndGggaW52YWxpZCBkaWFnbm9zdGljc1xuICAyNTU0LCAyNTU1LCAyNTU2LCAyNTU3LFxuXTtcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB2aXNpdHMgZXZlcnkgVHlwZVNjcmlwdCBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIGFuZCBjaGVja3MgaWZcbiAqIHRoZSBwYXJhbWV0ZXIgdHlwZSBzaWduYXR1cmUgaXMgaW52YWxpZCBhbmQgbmVlZHMgdG8gYmUgdXBkYXRlZCBtYW51YWxseS5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbnN0cnVjdG9yU2lnbmF0dXJlTWlncmF0aW9uIGV4dGVuZHMgTWlncmF0aW9uPFVwZ3JhZGVEYXRhPiB7XG4gIC8vIE5vdGUgdGhhdCB0aGUgZGF0YSBmb3IgdGhpcyBydWxlIGlzIG5vdCBkaXN0aW5ndWlzaGVkIGJhc2VkIG9uIHRoZSB0YXJnZXQgdmVyc2lvbiBiZWNhdXNlXG4gIC8vIHdlIGRvbid0IGtlZXAgdHJhY2sgb2YgdGhlIG5ldyBzaWduYXR1cmUgYW5kIGRvbid0IHdhbnQgdG8gdXBkYXRlIGluY3JlbWVudGFsbHkuXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9wdWxsLzEyOTcwI2lzc3VlY29tbWVudC00MTgzMzc1NjZcbiAgZGF0YSA9IGdldEFsbENoYW5nZXModGhpcy51cGdyYWRlRGF0YS5jb25zdHJ1Y3RvckNoZWNrcyk7XG5cbiAgLy8gT25seSBlbmFibGUgdGhlIG1pZ3JhdGlvbiBydWxlIGlmIHRoZXJlIGlzIHVwZ3JhZGUgZGF0YS5cbiAgZW5hYmxlZCA9IHRoaXMuZGF0YS5sZW5ndGggIT09IDA7XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNTb3VyY2VGaWxlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFNvdXJjZUZpbGUobm9kZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0aGF0IHdpbGwgYmUgY2FsbGVkIGZvciBlYWNoIHNvdXJjZSBmaWxlIG9mIHRoZSB1cGdyYWRlIHByb2plY3QuIEluIG9yZGVyIHRvXG4gICAqIHByb3Blcmx5IGRldGVybWluZSBpbnZhbGlkIGNvbnN0cnVjdG9yIHNpZ25hdHVyZXMsIHdlIHRha2UgYWR2YW50YWdlIG9mIHRoZSBwcmUtZW1pdFxuICAgKiBkaWFnbm9zdGljcyBmcm9tIFR5cGVTY3JpcHQuXG4gICAqXG4gICAqIEJ5IHVzaW5nIHRoZSBkaWFnbm9zdGljcywgdGhlIG1pZ3JhdGlvbiBjYW4gaGFuZGxlIHR5cGUgYXNzaWduYWJpbGl0eS4gTm90IHVzaW5nXG4gICAqIGRpYWdub3N0aWNzIHdvdWxkIG1lYW4gdGhhdCB3ZSBuZWVkIHRvIHVzZSBzaW1wbGUgdHlwZSBlcXVhbGl0eSBjaGVja2luZyB3aGljaCBpc1xuICAgKiB0b28gc3RyaWN0LiBTZWUgcmVsYXRlZCBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL01pY3Jvc29mdC9UeXBlU2NyaXB0L2lzc3Vlcy85ODc5XG4gICAqL1xuICBwcml2YXRlIF92aXNpdFNvdXJjZUZpbGUoc291cmNlRmlsZTogdHMuU291cmNlRmlsZSkge1xuICAgIC8vIExpc3Qgb2YgY2xhc3NlcyBvZiB3aGljaCB0aGUgY29uc3RydWN0b3Igc2lnbmF0dXJlIGhhcyBjaGFuZ2VkLlxuICAgIGNvbnN0IGRpYWdub3N0aWNzID0gdHNcbiAgICAgIC5nZXRQcmVFbWl0RGlhZ25vc3RpY3ModGhpcy5wcm9ncmFtLCBzb3VyY2VGaWxlKVxuICAgICAgLmZpbHRlcihkaWFnbm9zdGljID0+IHNpZ25hdHVyZUVycm9yRGlhZ25vc3RpY3MuaW5jbHVkZXMoZGlhZ25vc3RpYy5jb2RlKSlcbiAgICAgIC5maWx0ZXIoZGlhZ25vc3RpYyA9PiBkaWFnbm9zdGljLnN0YXJ0ICE9PSB1bmRlZmluZWQpO1xuXG4gICAgZm9yIChjb25zdCBkaWFnbm9zdGljIG9mIGRpYWdub3N0aWNzKSB7XG4gICAgICBjb25zdCBub2RlID0gZmluZENvbnN0cnVjdG9yTm9kZShkaWFnbm9zdGljLCBzb3VyY2VGaWxlKTtcblxuICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGFzc1R5cGUgPSB0aGlzLnR5cGVDaGVja2VyLmdldFR5cGVBdExvY2F0aW9uKG5vZGUuZXhwcmVzc2lvbik7XG4gICAgICBjb25zdCBjbGFzc05hbWUgPSBjbGFzc1R5cGUuc3ltYm9sICYmIGNsYXNzVHlwZS5zeW1ib2wubmFtZTtcbiAgICAgIGNvbnN0IGlzTmV3RXhwcmVzc2lvbiA9IHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKTtcblxuICAgICAgLy8gRGV0ZXJtaW5lIHRoZSBjbGFzcyBuYW1lcyBvZiB0aGUgYWN0dWFsIGNvbnN0cnVjdCBzaWduYXR1cmVzIGJlY2F1c2Ugd2UgY2Fubm90IGFzc3VtZSB0aGF0XG4gICAgICAvLyB0aGUgZGlhZ25vc3RpYyByZWZlcnMgdG8gYSBjb25zdHJ1Y3RvciBvZiB0aGUgYWN0dWFsIGV4cHJlc3Npb24uIEluIGNhc2UgdGhlIGNvbnN0cnVjdG9yXG4gICAgICAvLyBpcyBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gZGV0ZWN0IHRoYXQgdGhlIG93bmVyLWNsYXNzIG9mIHRoZSBjb25zdHJ1Y3RvciBpcyBhZGRlZCB0byB0aGVcbiAgICAgIC8vIGNvbnN0cnVjdG9yIGNoZWNrcyB1cGdyYWRlIGRhdGEuIGUuZy4gYGNsYXNzIEN1c3RvbUNhbGVuZGFyIGV4dGVuZHMgTWF0Q2FsZW5kYXIge31gLlxuICAgICAgY29uc3Qgc2lnbmF0dXJlQ2xhc3NOYW1lcyA9IGNsYXNzVHlwZVxuICAgICAgICAuZ2V0Q29uc3RydWN0U2lnbmF0dXJlcygpXG4gICAgICAgIC5tYXAoc2lnbmF0dXJlID0+IGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmUpKVxuICAgICAgICAubWFwKGRlY2xhcmF0aW9uID0+IChkZWNsYXJhdGlvbiAmJiBkZWNsYXJhdGlvbi5uYW1lID8gZGVjbGFyYXRpb24ubmFtZS50ZXh0IDogbnVsbCkpXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbik7XG5cbiAgICAgIC8vIEJlc2lkZXMgY2hlY2tpbmcgdGhlIHNpZ25hdHVyZSBjbGFzcyBuYW1lcywgd2UgbmVlZCB0byBjaGVjayB0aGUgYWN0dWFsIGNsYXNzIG5hbWUgYmVjYXVzZVxuICAgICAgLy8gdGhlcmUgY2FuIGJlIGNsYXNzZXMgd2l0aG91dCBhbiBleHBsaWNpdCBjb25zdHJ1Y3Rvci5cbiAgICAgIGlmIChcbiAgICAgICAgIXRoaXMuZGF0YS5pbmNsdWRlcyhjbGFzc05hbWUpICYmXG4gICAgICAgICFzaWduYXR1cmVDbGFzc05hbWVzLnNvbWUobmFtZSA9PiB0aGlzLmRhdGEuaW5jbHVkZXMobmFtZSEpKVxuICAgICAgKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGFzc1NpZ25hdHVyZXMgPSBjbGFzc1R5cGVcbiAgICAgICAgLmdldENvbnN0cnVjdFNpZ25hdHVyZXMoKVxuICAgICAgICAubWFwKHNpZ25hdHVyZSA9PiBnZXRQYXJhbWV0ZXJUeXBlc0Zyb21TaWduYXR1cmUoc2lnbmF0dXJlLCB0aGlzLnR5cGVDaGVja2VyKSk7XG5cbiAgICAgIGNvbnN0IGV4cHJlc3Npb25OYW1lID0gaXNOZXdFeHByZXNzaW9uID8gYG5ldyAke2NsYXNzTmFtZX1gIDogJ3N1cGVyJztcbiAgICAgIGNvbnN0IHNpZ25hdHVyZXMgPSBjbGFzc1NpZ25hdHVyZXNcbiAgICAgICAgLm1hcChzaWduYXR1cmUgPT5cbiAgICAgICAgICBzaWduYXR1cmUubWFwKHQgPT4gKHQgPT09IG51bGwgPyAnYW55JyA6IHRoaXMudHlwZUNoZWNrZXIudHlwZVRvU3RyaW5nKHQpKSksXG4gICAgICAgIClcbiAgICAgICAgLm1hcChzaWduYXR1cmUgPT4gYCR7ZXhwcmVzc2lvbk5hbWV9KCR7c2lnbmF0dXJlLmpvaW4oJywgJyl9KWApXG4gICAgICAgIC5qb2luKCcgb3IgJyk7XG5cbiAgICAgIHRoaXMuY3JlYXRlRmFpbHVyZUF0Tm9kZShcbiAgICAgICAgbm9kZSxcbiAgICAgICAgYEZvdW5kIFwiJHtjbGFzc05hbWV9XCIgY29uc3RydWN0ZWQgd2l0aCBgICtcbiAgICAgICAgICBgYW4gaW52YWxpZCBzaWduYXR1cmUuIFBsZWFzZSBtYW51YWxseSB1cGRhdGUgdGhlICR7ZXhwcmVzc2lvbk5hbWV9IGV4cHJlc3Npb24gdG8gYCArXG4gICAgICAgICAgYG1hdGNoIHRoZSBuZXcgc2lnbmF0dXJlJHtjbGFzc1NpZ25hdHVyZXMubGVuZ3RoID4gMSA/ICdzJyA6ICcnfTogJHtzaWduYXR1cmVzfWAsXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG4vKiogUmVzb2x2ZXMgdGhlIHR5cGUgZm9yIGVhY2ggcGFyYW1ldGVyIGluIHRoZSBzcGVjaWZpZWQgc2lnbmF0dXJlLiAqL1xuZnVuY3Rpb24gZ2V0UGFyYW1ldGVyVHlwZXNGcm9tU2lnbmF0dXJlKFxuICBzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSxcbiAgdHlwZUNoZWNrZXI6IHRzLlR5cGVDaGVja2VyLFxuKTogKHRzLlR5cGUgfCBudWxsKVtdIHtcbiAgcmV0dXJuIHNpZ25hdHVyZVxuICAgIC5nZXRQYXJhbWV0ZXJzKClcbiAgICAubWFwKHBhcmFtID0+XG4gICAgICBwYXJhbS5kZWNsYXJhdGlvbnMgPyB0eXBlQ2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihwYXJhbS5kZWNsYXJhdGlvbnNbMF0pIDogbnVsbCxcbiAgICApO1xufVxuXG4vKipcbiAqIFdhbGtzIHRocm91Z2ggZWFjaCBub2RlIG9mIGEgc291cmNlIGZpbGUgaW4gb3JkZXIgdG8gZmluZCBhIG5ldy1leHByZXNzaW9uIG5vZGUgb3Igc3VwZXItY2FsbFxuICogZXhwcmVzc2lvbiBub2RlIHRoYXQgaXMgY2FwdHVyZWQgYnkgdGhlIHNwZWNpZmllZCBkaWFnbm9zdGljLlxuICovXG5mdW5jdGlvbiBmaW5kQ29uc3RydWN0b3JOb2RlKFxuICBkaWFnbm9zdGljOiB0cy5EaWFnbm9zdGljLFxuICBzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlLFxuKTogdHMuQ2FsbEV4cHJlc3Npb24gfCB0cy5OZXdFeHByZXNzaW9uIHwgbnVsbCB7XG4gIGxldCByZXNvbHZlZE5vZGU6IHRzLk5vZGUgfCBudWxsID0gbnVsbDtcblxuICBjb25zdCBfdmlzaXROb2RlID0gKG5vZGU6IHRzLk5vZGUpID0+IHtcbiAgICAvLyBDaGVjayB3aGV0aGVyIHRoZSBjdXJyZW50IG5vZGUgY29udGFpbnMgdGhlIGRpYWdub3N0aWMuIElmIHRoZSBub2RlIGNvbnRhaW5zIHRoZSBkaWFnbm9zdGljLFxuICAgIC8vIHdhbGsgZGVlcGVyIGluIG9yZGVyIHRvIGZpbmQgYWxsIGNvbnN0cnVjdG9yIGV4cHJlc3Npb24gbm9kZXMuXG4gICAgaWYgKG5vZGUuZ2V0U3RhcnQoKSA8PSBkaWFnbm9zdGljLnN0YXJ0ISAmJiBub2RlLmdldEVuZCgpID49IGRpYWdub3N0aWMuc3RhcnQhKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKSB8fFxuICAgICAgICAodHMuaXNDYWxsRXhwcmVzc2lvbihub2RlKSAmJiBub2RlLmV4cHJlc3Npb24ua2luZCA9PT0gdHMuU3ludGF4S2luZC5TdXBlcktleXdvcmQpXG4gICAgICApIHtcbiAgICAgICAgcmVzb2x2ZWROb2RlID0gbm9kZTtcbiAgICAgIH1cblxuICAgICAgdHMuZm9yRWFjaENoaWxkKG5vZGUsIF92aXNpdE5vZGUpO1xuICAgIH1cbiAgfTtcblxuICB0cy5mb3JFYWNoQ2hpbGQoc291cmNlRmlsZSwgX3Zpc2l0Tm9kZSk7XG5cbiAgcmV0dXJuIHJlc29sdmVkTm9kZTtcbn1cblxuLyoqIERldGVybWluZXMgdGhlIGNsYXNzIGRlY2xhcmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgY29uc3RydWN0IHNpZ25hdHVyZS4gKi9cbmZ1bmN0aW9uIGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSk6IHRzLkNsYXNzRGVjbGFyYXRpb24gfCBudWxsIHtcbiAgbGV0IG5vZGU6IHRzLk5vZGUgPSBzaWduYXR1cmUuZ2V0RGVjbGFyYXRpb24oKTtcbiAgLy8gSGFuZGxlIHNpZ25hdHVyZXMgd2hpY2ggZG9uJ3QgaGF2ZSBhbiBhY3R1YWwgZGVjbGFyYXRpb24uIFRoaXMgaGFwcGVucyBpZiBhIGNsYXNzXG4gIC8vIGRvZXMgbm90IGhhdmUgYW4gZXhwbGljaXRseSB3cml0dGVuIGNvbnN0cnVjdG9yLlxuICBpZiAoIW5vZGUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICB3aGlsZSAoIXRzLmlzU291cmNlRmlsZSgobm9kZSA9IG5vZGUucGFyZW50KSkpIHtcbiAgICBpZiAodHMuaXNDbGFzc0RlY2xhcmF0aW9uKG5vZGUpKSB7XG4gICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG4iXX0=
@@ -28,15 +28,12 @@ const signatureErrorDiagnostics = [
28
28
  * the parameter type signature is invalid and needs to be updated manually.
29
29
  */
30
30
  class ConstructorSignatureMigration extends migration_1.Migration {
31
- constructor() {
32
- super(...arguments);
33
- // Note that the data for this rule is not distinguished based on the target version because
34
- // we don't keep track of the new signature and don't want to update incrementally.
35
- // See: https://github.com/angular/components/pull/12970#issuecomment-418337566
36
- this.data = (0, version_changes_1.getAllChanges)(this.upgradeData.constructorChecks);
37
- // Only enable the migration rule if there is upgrade data.
38
- this.enabled = this.data.length !== 0;
39
- }
31
+ // Note that the data for this rule is not distinguished based on the target version because
32
+ // we don't keep track of the new signature and don't want to update incrementally.
33
+ // See: https://github.com/angular/components/pull/12970#issuecomment-418337566
34
+ data = (0, version_changes_1.getAllChanges)(this.upgradeData.constructorChecks);
35
+ // Only enable the migration rule if there is upgrade data.
36
+ enabled = this.data.length !== 0;
40
37
  visitNode(node) {
41
38
  if (ts.isSourceFile(node)) {
42
39
  this._visitSourceFile(node);
@@ -136,4 +133,4 @@ function getClassDeclarationOfSignature(signature) {
136
133
  }
137
134
  return null;
138
135
  }
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0b3Itc2lnbmF0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL25nLXVwZGF0ZS9taWdyYXRpb25zL2NvbnN0cnVjdG9yLXNpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCxpQ0FBaUM7QUFDakMsMkRBQXNEO0FBQ3RELHVFQUFnRTtBQUdoRTs7Ozs7R0FLRztBQUNILE1BQU0seUJBQXlCLEdBQUc7SUFDaEMsd0NBQXdDO0lBQ3hDLElBQUk7SUFDSixrREFBa0Q7SUFDbEQsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSTtDQUN2QixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBYSw2QkFBOEIsU0FBUSxxQkFBc0I7SUFBekU7O1FBQ0UsNEZBQTRGO1FBQzVGLG1GQUFtRjtRQUNuRiwrRUFBK0U7UUFDL0UsU0FBSSxHQUFHLElBQUEsK0JBQWEsRUFBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFekQsMkRBQTJEO1FBQzNELFlBQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUEwRW5DLENBQUM7SUF4RVUsU0FBUyxDQUFDLElBQWE7UUFDOUIsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNLLGdCQUFnQixDQUFDLFVBQXlCO1FBQ2hELGtFQUFrRTtRQUNsRSxNQUFNLFdBQVcsR0FBRyxFQUFFO2FBQ25CLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDO2FBQy9DLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLHlCQUF5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O0lBQ3BGLG1EQUFtRDtJQUNuRCxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ1QsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFO1FBQzdDLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFO1lBQy9CLE9BQU8sSUFBSSxDQUFDO1NBQ2I7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtnZXRBbGxDaGFuZ2VzfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC92ZXJzaW9uLWNoYW5nZXMnO1xuaW1wb3J0IHtVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBMaXN0IG9mIGRpYWdub3N0aWMgY29kZXMgdGhhdCByZWZlciB0byBwcmUtZW1pdCBkaWFnbm9zdGljcyB3aGljaCBpbmRpY2F0ZSBpbnZhbGlkXG4gKiBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIHNpZ25hdHVyZXMuIFNlZSB0aGUgbGlzdCBvZiBkaWFnbm9zdGljcyBoZXJlOlxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWNyb3NvZnQvVHlwZVNjcmlwdC9ibG9iL21hc3Rlci9zcmMvY29tcGlsZXIvZGlhZ25vc3RpY01lc3NhZ2VzLmpzb25cbiAqL1xuY29uc3Qgc2lnbmF0dXJlRXJyb3JEaWFnbm9zdGljcyA9IFtcbiAgLy8gVHlwZSBub3QgYXNzaWduYWJsZSBlcnJvciBkaWFnbm9zdGljLlxuICAyMzQ1LFxuICAvLyBDb25zdHJ1Y3RvciBhcmd1bWVudCBsZW5ndGggaW52YWxpZCBkaWFnbm9zdGljc1xuICAyNTU0LCAyNTU1LCAyNTU2LCAyNTU3LFxuXTtcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB2aXNpdHMgZXZlcnkgVHlwZVNjcmlwdCBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIGFuZCBjaGVja3MgaWZcbiAqIHRoZSBwYXJhbWV0ZXIgdHlwZSBzaWduYXR1cmUgaXMgaW52YWxpZCBhbmQgbmVlZHMgdG8gYmUgdXBkYXRlZCBtYW51YWxseS5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbnN0cnVjdG9yU2lnbmF0dXJlTWlncmF0aW9uIGV4dGVuZHMgTWlncmF0aW9uPFVwZ3JhZGVEYXRhPiB7XG4gIC8vIE5vdGUgdGhhdCB0aGUgZGF0YSBmb3IgdGhpcyBydWxlIGlzIG5vdCBkaXN0aW5ndWlzaGVkIGJhc2VkIG9uIHRoZSB0YXJnZXQgdmVyc2lvbiBiZWNhdXNlXG4gIC8vIHdlIGRvbid0IGtlZXAgdHJhY2sgb2YgdGhlIG5ldyBzaWduYXR1cmUgYW5kIGRvbid0IHdhbnQgdG8gdXBkYXRlIGluY3JlbWVudGFsbHkuXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9wdWxsLzEyOTcwI2lzc3VlY29tbWVudC00MTgzMzc1NjZcbiAgZGF0YSA9IGdldEFsbENoYW5nZXModGhpcy51cGdyYWRlRGF0YS5jb25zdHJ1Y3RvckNoZWNrcyk7XG5cbiAgLy8gT25seSBlbmFibGUgdGhlIG1pZ3JhdGlvbiBydWxlIGlmIHRoZXJlIGlzIHVwZ3JhZGUgZGF0YS5cbiAgZW5hYmxlZCA9IHRoaXMuZGF0YS5sZW5ndGggIT09IDA7XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNTb3VyY2VGaWxlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFNvdXJjZUZpbGUobm9kZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0aGF0IHdpbGwgYmUgY2FsbGVkIGZvciBlYWNoIHNvdXJjZSBmaWxlIG9mIHRoZSB1cGdyYWRlIHByb2plY3QuIEluIG9yZGVyIHRvXG4gICAqIHByb3Blcmx5IGRldGVybWluZSBpbnZhbGlkIGNvbnN0cnVjdG9yIHNpZ25hdHVyZXMsIHdlIHRha2UgYWR2YW50YWdlIG9mIHRoZSBwcmUtZW1pdFxuICAgKiBkaWFnbm9zdGljcyBmcm9tIFR5cGVTY3JpcHQuXG4gICAqXG4gICAqIEJ5IHVzaW5nIHRoZSBkaWFnbm9zdGljcywgdGhlIG1pZ3JhdGlvbiBjYW4gaGFuZGxlIHR5cGUgYXNzaWduYWJpbGl0eS4gTm90IHVzaW5nXG4gICAqIGRpYWdub3N0aWNzIHdvdWxkIG1lYW4gdGhhdCB3ZSBuZWVkIHRvIHVzZSBzaW1wbGUgdHlwZSBlcXVhbGl0eSBjaGVja2luZyB3aGljaCBpc1xuICAgKiB0b28gc3RyaWN0LiBTZWUgcmVsYXRlZCBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL01pY3Jvc29mdC9UeXBlU2NyaXB0L2lzc3Vlcy85ODc5XG4gICAqL1xuICBwcml2YXRlIF92aXNpdFNvdXJjZUZpbGUoc291cmNlRmlsZTogdHMuU291cmNlRmlsZSkge1xuICAgIC8vIExpc3Qgb2YgY2xhc3NlcyBvZiB3aGljaCB0aGUgY29uc3RydWN0b3Igc2lnbmF0dXJlIGhhcyBjaGFuZ2VkLlxuICAgIGNvbnN0IGRpYWdub3N0aWNzID0gdHNcbiAgICAgIC5nZXRQcmVFbWl0RGlhZ25vc3RpY3ModGhpcy5wcm9ncmFtLCBzb3VyY2VGaWxlKVxuICAgICAgLmZpbHRlcihkaWFnbm9zdGljID0+IHNpZ25hdHVyZUVycm9yRGlhZ25vc3RpY3MuaW5jbHVkZXMoZGlhZ25vc3RpYy5jb2RlKSlcbiAgICAgIC5maWx0ZXIoZGlhZ25vc3RpYyA9PiBkaWFnbm9zdGljLnN0YXJ0ICE9PSB1bmRlZmluZWQpO1xuXG4gICAgZm9yIChjb25zdCBkaWFnbm9zdGljIG9mIGRpYWdub3N0aWNzKSB7XG4gICAgICBjb25zdCBub2RlID0gZmluZENvbnN0cnVjdG9yTm9kZShkaWFnbm9zdGljLCBzb3VyY2VGaWxlKTtcblxuICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGFzc1R5cGUgPSB0aGlzLnR5cGVDaGVja2VyLmdldFR5cGVBdExvY2F0aW9uKG5vZGUuZXhwcmVzc2lvbik7XG4gICAgICBjb25zdCBjbGFzc05hbWUgPSBjbGFzc1R5cGUuc3ltYm9sICYmIGNsYXNzVHlwZS5zeW1ib2wubmFtZTtcbiAgICAgIGNvbnN0IGlzTmV3RXhwcmVzc2lvbiA9IHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKTtcblxuICAgICAgLy8gRGV0ZXJtaW5lIHRoZSBjbGFzcyBuYW1lcyBvZiB0aGUgYWN0dWFsIGNvbnN0cnVjdCBzaWduYXR1cmVzIGJlY2F1c2Ugd2UgY2Fubm90IGFzc3VtZSB0aGF0XG4gICAgICAvLyB0aGUgZGlhZ25vc3RpYyByZWZlcnMgdG8gYSBjb25zdHJ1Y3RvciBvZiB0aGUgYWN0dWFsIGV4cHJlc3Npb24uIEluIGNhc2UgdGhlIGNvbnN0cnVjdG9yXG4gICAgICAvLyBpcyBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gZGV0ZWN0IHRoYXQgdGhlIG93bmVyLWNsYXNzIG9mIHRoZSBjb25zdHJ1Y3RvciBpcyBhZGRlZCB0byB0aGVcbiAgICAgIC8vIGNvbnN0cnVjdG9yIGNoZWNrcyB1cGdyYWRlIGRhdGEuIGUuZy4gYGNsYXNzIEN1c3RvbUNhbGVuZGFyIGV4dGVuZHMgTWF0Q2FsZW5kYXIge31gLlxuICAgICAgY29uc3Qgc2lnbmF0dXJlQ2xhc3NOYW1lcyA9IGNsYXNzVHlwZVxuICAgICAgICAuZ2V0Q29uc3RydWN0U2lnbmF0dXJlcygpXG4gICAgICAgIC5tYXAoc2lnbmF0dXJlID0+IGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmUpKVxuICAgICAgICAubWFwKGRlY2xhcmF0aW9uID0+IChkZWNsYXJhdGlvbiAmJiBkZWNsYXJhdGlvbi5uYW1lID8gZGVjbGFyYXRpb24ubmFtZS50ZXh0IDogbnVsbCkpXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbik7XG5cbiAgICAgIC8vIEJlc2lkZXMgY2hlY2tpbmcgdGhlIHNpZ25hdHVyZSBjbGFzcyBuYW1lcywgd2UgbmVlZCB0byBjaGVjayB0aGUgYWN0dWFsIGNsYXNzIG5hbWUgYmVjYXVzZVxuICAgICAgLy8gdGhlcmUgY2FuIGJlIGNsYXNzZXMgd2l0aG91dCBhbiBleHBsaWNpdCBjb25zdHJ1Y3Rvci5cbiAgICAgIGlmIChcbiAgICAgICAgIXRoaXMuZGF0YS5pbmNsdWRlcyhjbGFzc05hbWUpICYmXG4gICAgICAgICFzaWduYXR1cmVDbGFzc05hbWVzLnNvbWUobmFtZSA9PiB0aGlzLmRhdGEuaW5jbHVkZXMobmFtZSEpKVxuICAgICAgKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGFzc1NpZ25hdHVyZXMgPSBjbGFzc1R5cGVcbiAgICAgICAgLmdldENvbnN0cnVjdFNpZ25hdHVyZXMoKVxuICAgICAgICAubWFwKHNpZ25hdHVyZSA9PiBnZXRQYXJhbWV0ZXJUeXBlc0Zyb21TaWduYXR1cmUoc2lnbmF0dXJlLCB0aGlzLnR5cGVDaGVja2VyKSk7XG5cbiAgICAgIGNvbnN0IGV4cHJlc3Npb25OYW1lID0gaXNOZXdFeHByZXNzaW9uID8gYG5ldyAke2NsYXNzTmFtZX1gIDogJ3N1cGVyJztcbiAgICAgIGNvbnN0IHNpZ25hdHVyZXMgPSBjbGFzc1NpZ25hdHVyZXNcbiAgICAgICAgLm1hcChzaWduYXR1cmUgPT5cbiAgICAgICAgICBzaWduYXR1cmUubWFwKHQgPT4gKHQgPT09IG51bGwgPyAnYW55JyA6IHRoaXMudHlwZUNoZWNrZXIudHlwZVRvU3RyaW5nKHQpKSksXG4gICAgICAgIClcbiAgICAgICAgLm1hcChzaWduYXR1cmUgPT4gYCR7ZXhwcmVzc2lvbk5hbWV9KCR7c2lnbmF0dXJlLmpvaW4oJywgJyl9KWApXG4gICAgICAgIC5qb2luKCcgb3IgJyk7XG5cbiAgICAgIHRoaXMuY3JlYXRlRmFpbHVyZUF0Tm9kZShcbiAgICAgICAgbm9kZSxcbiAgICAgICAgYEZvdW5kIFwiJHtjbGFzc05hbWV9XCIgY29uc3RydWN0ZWQgd2l0aCBgICtcbiAgICAgICAgICBgYW4gaW52YWxpZCBzaWduYXR1cmUuIFBsZWFzZSBtYW51YWxseSB1cGRhdGUgdGhlICR7ZXhwcmVzc2lvbk5hbWV9IGV4cHJlc3Npb24gdG8gYCArXG4gICAgICAgICAgYG1hdGNoIHRoZSBuZXcgc2lnbmF0dXJlJHtjbGFzc1NpZ25hdHVyZXMubGVuZ3RoID4gMSA/ICdzJyA6ICcnfTogJHtzaWduYXR1cmVzfWAsXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG4vKiogUmVzb2x2ZXMgdGhlIHR5cGUgZm9yIGVhY2ggcGFyYW1ldGVyIGluIHRoZSBzcGVjaWZpZWQgc2lnbmF0dXJlLiAqL1xuZnVuY3Rpb24gZ2V0UGFyYW1ldGVyVHlwZXNGcm9tU2lnbmF0dXJlKFxuICBzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSxcbiAgdHlwZUNoZWNrZXI6IHRzLlR5cGVDaGVja2VyLFxuKTogKHRzLlR5cGUgfCBudWxsKVtdIHtcbiAgcmV0dXJuIHNpZ25hdHVyZVxuICAgIC5nZXRQYXJhbWV0ZXJzKClcbiAgICAubWFwKHBhcmFtID0+XG4gICAgICBwYXJhbS5kZWNsYXJhdGlvbnMgPyB0eXBlQ2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihwYXJhbS5kZWNsYXJhdGlvbnNbMF0pIDogbnVsbCxcbiAgICApO1xufVxuXG4vKipcbiAqIFdhbGtzIHRocm91Z2ggZWFjaCBub2RlIG9mIGEgc291cmNlIGZpbGUgaW4gb3JkZXIgdG8gZmluZCBhIG5ldy1leHByZXNzaW9uIG5vZGUgb3Igc3VwZXItY2FsbFxuICogZXhwcmVzc2lvbiBub2RlIHRoYXQgaXMgY2FwdHVyZWQgYnkgdGhlIHNwZWNpZmllZCBkaWFnbm9zdGljLlxuICovXG5mdW5jdGlvbiBmaW5kQ29uc3RydWN0b3JOb2RlKFxuICBkaWFnbm9zdGljOiB0cy5EaWFnbm9zdGljLFxuICBzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlLFxuKTogdHMuQ2FsbEV4cHJlc3Npb24gfCB0cy5OZXdFeHByZXNzaW9uIHwgbnVsbCB7XG4gIGxldCByZXNvbHZlZE5vZGU6IHRzLk5vZGUgfCBudWxsID0gbnVsbDtcblxuICBjb25zdCBfdmlzaXROb2RlID0gKG5vZGU6IHRzLk5vZGUpID0+IHtcbiAgICAvLyBDaGVjayB3aGV0aGVyIHRoZSBjdXJyZW50IG5vZGUgY29udGFpbnMgdGhlIGRpYWdub3N0aWMuIElmIHRoZSBub2RlIGNvbnRhaW5zIHRoZSBkaWFnbm9zdGljLFxuICAgIC8vIHdhbGsgZGVlcGVyIGluIG9yZGVyIHRvIGZpbmQgYWxsIGNvbnN0cnVjdG9yIGV4cHJlc3Npb24gbm9kZXMuXG4gICAgaWYgKG5vZGUuZ2V0U3RhcnQoKSA8PSBkaWFnbm9zdGljLnN0YXJ0ISAmJiBub2RlLmdldEVuZCgpID49IGRpYWdub3N0aWMuc3RhcnQhKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKSB8fFxuICAgICAgICAodHMuaXNDYWxsRXhwcmVzc2lvbihub2RlKSAmJiBub2RlLmV4cHJlc3Npb24ua2luZCA9PT0gdHMuU3ludGF4S2luZC5TdXBlcktleXdvcmQpXG4gICAgICApIHtcbiAgICAgICAgcmVzb2x2ZWROb2RlID0gbm9kZTtcbiAgICAgIH1cblxuICAgICAgdHMuZm9yRWFjaENoaWxkKG5vZGUsIF92aXNpdE5vZGUpO1xuICAgIH1cbiAgfTtcblxuICB0cy5mb3JFYWNoQ2hpbGQoc291cmNlRmlsZSwgX3Zpc2l0Tm9kZSk7XG5cbiAgcmV0dXJuIHJlc29sdmVkTm9kZTtcbn1cblxuLyoqIERldGVybWluZXMgdGhlIGNsYXNzIGRlY2xhcmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgY29uc3RydWN0IHNpZ25hdHVyZS4gKi9cbmZ1bmN0aW9uIGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSk6IHRzLkNsYXNzRGVjbGFyYXRpb24gfCBudWxsIHtcbiAgbGV0IG5vZGU6IHRzLk5vZGUgPSBzaWduYXR1cmUuZ2V0RGVjbGFyYXRpb24oKTtcbiAgLy8gSGFuZGxlIHNpZ25hdHVyZXMgd2hpY2ggZG9uJ3QgaGF2ZSBhbiBhY3R1YWwgZGVjbGFyYXRpb24uIFRoaXMgaGFwcGVucyBpZiBhIGNsYXNzXG4gIC8vIGRvZXMgbm90IGhhdmUgYW4gZXhwbGljaXRseSB3cml0dGVuIGNvbnN0cnVjdG9yLlxuICBpZiAoIW5vZGUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICB3aGlsZSAoIXRzLmlzU291cmNlRmlsZSgobm9kZSA9IG5vZGUucGFyZW50KSkpIHtcbiAgICBpZiAodHMuaXNDbGFzc0RlY2xhcmF0aW9uKG5vZGUpKSB7XG4gICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG4iXX0=
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0b3Itc2lnbmF0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nkay9zY2hlbWF0aWNzL25nLXVwZGF0ZS9taWdyYXRpb25zL2NvbnN0cnVjdG9yLXNpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCxpQ0FBaUM7QUFDakMsMkRBQXNEO0FBQ3RELHVFQUFnRTtBQUdoRTs7Ozs7R0FLRztBQUNILE1BQU0seUJBQXlCLEdBQUc7SUFDaEMsd0NBQXdDO0lBQ3hDLElBQUk7SUFDSixrREFBa0Q7SUFDbEQsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSTtDQUN2QixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBYSw2QkFBOEIsU0FBUSxxQkFBc0I7SUFDdkUsNEZBQTRGO0lBQzVGLG1GQUFtRjtJQUNuRiwrRUFBK0U7SUFDL0UsSUFBSSxHQUFHLElBQUEsK0JBQWEsRUFBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFekQsMkRBQTJEO0lBQzNELE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFFeEIsU0FBUyxDQUFDLElBQWE7UUFDOUIsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNLLGdCQUFnQixDQUFDLFVBQXlCO1FBQ2hELGtFQUFrRTtRQUNsRSxNQUFNLFdBQVcsR0FBRyxFQUFFO2FBQ25CLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDO2FBQy9DLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQyxV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RCxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ1QsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFO1FBQzdDLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFO1lBQy9CLE9BQU8sSUFBSSxDQUFDO1NBQ2I7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtnZXRBbGxDaGFuZ2VzfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC92ZXJzaW9uLWNoYW5nZXMnO1xuaW1wb3J0IHtVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBMaXN0IG9mIGRpYWdub3N0aWMgY29kZXMgdGhhdCByZWZlciB0byBwcmUtZW1pdCBkaWFnbm9zdGljcyB3aGljaCBpbmRpY2F0ZSBpbnZhbGlkXG4gKiBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIHNpZ25hdHVyZXMuIFNlZSB0aGUgbGlzdCBvZiBkaWFnbm9zdGljcyBoZXJlOlxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWNyb3NvZnQvVHlwZVNjcmlwdC9ibG9iL21hc3Rlci9zcmMvY29tcGlsZXIvZGlhZ25vc3RpY01lc3NhZ2VzLmpzb25cbiAqL1xuY29uc3Qgc2lnbmF0dXJlRXJyb3JEaWFnbm9zdGljcyA9IFtcbiAgLy8gVHlwZSBub3QgYXNzaWduYWJsZSBlcnJvciBkaWFnbm9zdGljLlxuICAyMzQ1LFxuICAvLyBDb25zdHJ1Y3RvciBhcmd1bWVudCBsZW5ndGggaW52YWxpZCBkaWFnbm9zdGljc1xuICAyNTU0LCAyNTU1LCAyNTU2LCAyNTU3LFxuXTtcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB2aXNpdHMgZXZlcnkgVHlwZVNjcmlwdCBuZXcgZXhwcmVzc2lvbiBvciBzdXBlciBjYWxsIGFuZCBjaGVja3MgaWZcbiAqIHRoZSBwYXJhbWV0ZXIgdHlwZSBzaWduYXR1cmUgaXMgaW52YWxpZCBhbmQgbmVlZHMgdG8gYmUgdXBkYXRlZCBtYW51YWxseS5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbnN0cnVjdG9yU2lnbmF0dXJlTWlncmF0aW9uIGV4dGVuZHMgTWlncmF0aW9uPFVwZ3JhZGVEYXRhPiB7XG4gIC8vIE5vdGUgdGhhdCB0aGUgZGF0YSBmb3IgdGhpcyBydWxlIGlzIG5vdCBkaXN0aW5ndWlzaGVkIGJhc2VkIG9uIHRoZSB0YXJnZXQgdmVyc2lvbiBiZWNhdXNlXG4gIC8vIHdlIGRvbid0IGtlZXAgdHJhY2sgb2YgdGhlIG5ldyBzaWduYXR1cmUgYW5kIGRvbid0IHdhbnQgdG8gdXBkYXRlIGluY3JlbWVudGFsbHkuXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9wdWxsLzEyOTcwI2lzc3VlY29tbWVudC00MTgzMzc1NjZcbiAgZGF0YSA9IGdldEFsbENoYW5nZXModGhpcy51cGdyYWRlRGF0YS5jb25zdHJ1Y3RvckNoZWNrcyk7XG5cbiAgLy8gT25seSBlbmFibGUgdGhlIG1pZ3JhdGlvbiBydWxlIGlmIHRoZXJlIGlzIHVwZ3JhZGUgZGF0YS5cbiAgZW5hYmxlZCA9IHRoaXMuZGF0YS5sZW5ndGggIT09IDA7XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNTb3VyY2VGaWxlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFNvdXJjZUZpbGUobm9kZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0aGF0IHdpbGwgYmUgY2FsbGVkIGZvciBlYWNoIHNvdXJjZSBmaWxlIG9mIHRoZSB1cGdyYWRlIHByb2plY3QuIEluIG9yZGVyIHRvXG4gICAqIHByb3Blcmx5IGRldGVybWluZSBpbnZhbGlkIGNvbnN0cnVjdG9yIHNpZ25hdHVyZXMsIHdlIHRha2UgYWR2YW50YWdlIG9mIHRoZSBwcmUtZW1pdFxuICAgKiBkaWFnbm9zdGljcyBmcm9tIFR5cGVTY3JpcHQuXG4gICAqXG4gICAqIEJ5IHVzaW5nIHRoZSBkaWFnbm9zdGljcywgdGhlIG1pZ3JhdGlvbiBjYW4gaGFuZGxlIHR5cGUgYXNzaWduYWJpbGl0eS4gTm90IHVzaW5nXG4gICAqIGRpYWdub3N0aWNzIHdvdWxkIG1lYW4gdGhhdCB3ZSBuZWVkIHRvIHVzZSBzaW1wbGUgdHlwZSBlcXVhbGl0eSBjaGVja2luZyB3aGljaCBpc1xuICAgKiB0b28gc3RyaWN0LiBTZWUgcmVsYXRlZCBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL01pY3Jvc29mdC9UeXBlU2NyaXB0L2lzc3Vlcy85ODc5XG4gICAqL1xuICBwcml2YXRlIF92aXNpdFNvdXJjZUZpbGUoc291cmNlRmlsZTogdHMuU291cmNlRmlsZSkge1xuICAgIC8vIExpc3Qgb2YgY2xhc3NlcyBvZiB3aGljaCB0aGUgY29uc3RydWN0b3Igc2lnbmF0dXJlIGhhcyBjaGFuZ2VkLlxuICAgIGNvbnN0IGRpYWdub3N0aWNzID0gdHNcbiAgICAgIC5nZXRQcmVFbWl0RGlhZ25vc3RpY3ModGhpcy5wcm9ncmFtLCBzb3VyY2VGaWxlKVxuICAgICAgLmZpbHRlcihkaWFnbm9zdGljID0+IHNpZ25hdHVyZUVycm9yRGlhZ25vc3RpY3MuaW5jbHVkZXMoZGlhZ25vc3RpYy5jb2RlKSlcbiAgICAgIC5maWx0ZXIoZGlhZ25vc3RpYyA9PiBkaWFnbm9zdGljLnN0YXJ0ICE9PSB1bmRlZmluZWQpO1xuXG4gICAgZm9yIChjb25zdCBkaWFnbm9zdGljIG9mIGRpYWdub3N0aWNzKSB7XG4gICAgICBjb25zdCBub2RlID0gZmluZENvbnN0cnVjdG9yTm9kZShkaWFnbm9zdGljLCBzb3VyY2VGaWxlKTtcblxuICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGFzc1R5cGUgPSB0aGlzLnR5cGVDaGVja2VyLmdldFR5cGVBdExvY2F0aW9uKG5vZGUuZXhwcmVzc2lvbik7XG4gICAgICBjb25zdCBjbGFzc05hbWUgPSBjbGFzc1R5cGUuc3ltYm9sICYmIGNsYXNzVHlwZS5zeW1ib2wubmFtZTtcbiAgICAgIGNvbnN0IGlzTmV3RXhwcmVzc2lvbiA9IHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKTtcblxuICAgICAgLy8gRGV0ZXJtaW5lIHRoZSBjbGFzcyBuYW1lcyBvZiB0aGUgYWN0dWFsIGNvbnN0cnVjdCBzaWduYXR1cmVzIGJlY2F1c2Ugd2UgY2Fubm90IGFzc3VtZSB0aGF0XG4gICAgICAvLyB0aGUgZGlhZ25vc3RpYyByZWZlcnMgdG8gYSBjb25zdHJ1Y3RvciBvZiB0aGUgYWN0dWFsIGV4cHJlc3Npb24uIEluIGNhc2UgdGhlIGNvbnN0cnVjdG9yXG4gICAgICAvLyBpcyBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gZGV0ZWN0IHRoYXQgdGhlIG93bmVyLWNsYXNzIG9mIHRoZSBjb25zdHJ1Y3RvciBpcyBhZGRlZCB0byB0aGVcbiAgICAgIC8vIGNvbnN0cnVjdG9yIGNoZWNrcyB1cGdyYWRlIGRhdGEuIGUuZy4gYGNsYXNzIEN1c3RvbUNhbGVuZGFyIGV4dGVuZHMgTWF0Q2FsZW5kYXIge31gLlxuICAgICAgY29uc3Qgc2lnbmF0dXJlQ2xhc3NOYW1lcyA9IGNsYXNzVHlwZVxuICAgICAgICAuZ2V0Q29uc3RydWN0U2lnbmF0dXJlcygpXG4gICAgICAgIC5tYXAoc2lnbmF0dXJlID0+IGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmUpKVxuICAgICAgICAubWFwKGRlY2xhcmF0aW9uID0+IChkZWNsYXJhdGlvbiAmJiBkZWNsYXJhdGlvbi5uYW1lID8gZGVjbGFyYXRpb24ubmFtZS50ZXh0IDogbnVsbCkpXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbik7XG5cbiAgICAgIC8vIEJlc2lkZXMgY2hlY2tpbmcgdGhlIHNpZ25hdHVyZSBjbGFzcyBuYW1lcywgd2UgbmVlZCB0byBjaGVjayB0aGUgYWN0dWFsIGNsYXNzIG5hbWUgYmVjYXVzZVxuICAgICAgLy8gdGhlcmUgY2FuIGJlIGNsYXNzZXMgd2l0aG91dCBhbiBleHBsaWNpdCBjb25zdHJ1Y3Rvci5cbiAgICAgIGlmIChcbiAgICAgICAgIXRoaXMuZGF0YS5pbmNsdWRlcyhjbGFzc05hbWUpICYmXG4gICAgICAgICFzaWduYXR1cmVDbGFzc05hbWVzLnNvbWUobmFtZSA9PiB0aGlzLmRhdGEuaW5jbHVkZXMobmFtZSEpKVxuICAgICAgKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGFzc1NpZ25hdHVyZXMgPSBjbGFzc1R5cGVcbiAgICAgICAgLmdldENvbnN0cnVjdFNpZ25hdHVyZXMoKVxuICAgICAgICAubWFwKHNpZ25hdHVyZSA9PiBnZXRQYXJhbWV0ZXJUeXBlc0Zyb21TaWduYXR1cmUoc2lnbmF0dXJlLCB0aGlzLnR5cGVDaGVja2VyKSk7XG5cbiAgICAgIGNvbnN0IGV4cHJlc3Npb25OYW1lID0gaXNOZXdFeHByZXNzaW9uID8gYG5ldyAke2NsYXNzTmFtZX1gIDogJ3N1cGVyJztcbiAgICAgIGNvbnN0IHNpZ25hdHVyZXMgPSBjbGFzc1NpZ25hdHVyZXNcbiAgICAgICAgLm1hcChzaWduYXR1cmUgPT5cbiAgICAgICAgICBzaWduYXR1cmUubWFwKHQgPT4gKHQgPT09IG51bGwgPyAnYW55JyA6IHRoaXMudHlwZUNoZWNrZXIudHlwZVRvU3RyaW5nKHQpKSksXG4gICAgICAgIClcbiAgICAgICAgLm1hcChzaWduYXR1cmUgPT4gYCR7ZXhwcmVzc2lvbk5hbWV9KCR7c2lnbmF0dXJlLmpvaW4oJywgJyl9KWApXG4gICAgICAgIC5qb2luKCcgb3IgJyk7XG5cbiAgICAgIHRoaXMuY3JlYXRlRmFpbHVyZUF0Tm9kZShcbiAgICAgICAgbm9kZSxcbiAgICAgICAgYEZvdW5kIFwiJHtjbGFzc05hbWV9XCIgY29uc3RydWN0ZWQgd2l0aCBgICtcbiAgICAgICAgICBgYW4gaW52YWxpZCBzaWduYXR1cmUuIFBsZWFzZSBtYW51YWxseSB1cGRhdGUgdGhlICR7ZXhwcmVzc2lvbk5hbWV9IGV4cHJlc3Npb24gdG8gYCArXG4gICAgICAgICAgYG1hdGNoIHRoZSBuZXcgc2lnbmF0dXJlJHtjbGFzc1NpZ25hdHVyZXMubGVuZ3RoID4gMSA/ICdzJyA6ICcnfTogJHtzaWduYXR1cmVzfWAsXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG4vKiogUmVzb2x2ZXMgdGhlIHR5cGUgZm9yIGVhY2ggcGFyYW1ldGVyIGluIHRoZSBzcGVjaWZpZWQgc2lnbmF0dXJlLiAqL1xuZnVuY3Rpb24gZ2V0UGFyYW1ldGVyVHlwZXNGcm9tU2lnbmF0dXJlKFxuICBzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSxcbiAgdHlwZUNoZWNrZXI6IHRzLlR5cGVDaGVja2VyLFxuKTogKHRzLlR5cGUgfCBudWxsKVtdIHtcbiAgcmV0dXJuIHNpZ25hdHVyZVxuICAgIC5nZXRQYXJhbWV0ZXJzKClcbiAgICAubWFwKHBhcmFtID0+XG4gICAgICBwYXJhbS5kZWNsYXJhdGlvbnMgPyB0eXBlQ2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihwYXJhbS5kZWNsYXJhdGlvbnNbMF0pIDogbnVsbCxcbiAgICApO1xufVxuXG4vKipcbiAqIFdhbGtzIHRocm91Z2ggZWFjaCBub2RlIG9mIGEgc291cmNlIGZpbGUgaW4gb3JkZXIgdG8gZmluZCBhIG5ldy1leHByZXNzaW9uIG5vZGUgb3Igc3VwZXItY2FsbFxuICogZXhwcmVzc2lvbiBub2RlIHRoYXQgaXMgY2FwdHVyZWQgYnkgdGhlIHNwZWNpZmllZCBkaWFnbm9zdGljLlxuICovXG5mdW5jdGlvbiBmaW5kQ29uc3RydWN0b3JOb2RlKFxuICBkaWFnbm9zdGljOiB0cy5EaWFnbm9zdGljLFxuICBzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlLFxuKTogdHMuQ2FsbEV4cHJlc3Npb24gfCB0cy5OZXdFeHByZXNzaW9uIHwgbnVsbCB7XG4gIGxldCByZXNvbHZlZE5vZGU6IHRzLk5vZGUgfCBudWxsID0gbnVsbDtcblxuICBjb25zdCBfdmlzaXROb2RlID0gKG5vZGU6IHRzLk5vZGUpID0+IHtcbiAgICAvLyBDaGVjayB3aGV0aGVyIHRoZSBjdXJyZW50IG5vZGUgY29udGFpbnMgdGhlIGRpYWdub3N0aWMuIElmIHRoZSBub2RlIGNvbnRhaW5zIHRoZSBkaWFnbm9zdGljLFxuICAgIC8vIHdhbGsgZGVlcGVyIGluIG9yZGVyIHRvIGZpbmQgYWxsIGNvbnN0cnVjdG9yIGV4cHJlc3Npb24gbm9kZXMuXG4gICAgaWYgKG5vZGUuZ2V0U3RhcnQoKSA8PSBkaWFnbm9zdGljLnN0YXJ0ISAmJiBub2RlLmdldEVuZCgpID49IGRpYWdub3N0aWMuc3RhcnQhKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRzLmlzTmV3RXhwcmVzc2lvbihub2RlKSB8fFxuICAgICAgICAodHMuaXNDYWxsRXhwcmVzc2lvbihub2RlKSAmJiBub2RlLmV4cHJlc3Npb24ua2luZCA9PT0gdHMuU3ludGF4S2luZC5TdXBlcktleXdvcmQpXG4gICAgICApIHtcbiAgICAgICAgcmVzb2x2ZWROb2RlID0gbm9kZTtcbiAgICAgIH1cblxuICAgICAgdHMuZm9yRWFjaENoaWxkKG5vZGUsIF92aXNpdE5vZGUpO1xuICAgIH1cbiAgfTtcblxuICB0cy5mb3JFYWNoQ2hpbGQoc291cmNlRmlsZSwgX3Zpc2l0Tm9kZSk7XG5cbiAgcmV0dXJuIHJlc29sdmVkTm9kZTtcbn1cblxuLyoqIERldGVybWluZXMgdGhlIGNsYXNzIGRlY2xhcmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgY29uc3RydWN0IHNpZ25hdHVyZS4gKi9cbmZ1bmN0aW9uIGdldENsYXNzRGVjbGFyYXRpb25PZlNpZ25hdHVyZShzaWduYXR1cmU6IHRzLlNpZ25hdHVyZSk6IHRzLkNsYXNzRGVjbGFyYXRpb24gfCBudWxsIHtcbiAgbGV0IG5vZGU6IHRzLk5vZGUgPSBzaWduYXR1cmUuZ2V0RGVjbGFyYXRpb24oKTtcbiAgLy8gSGFuZGxlIHNpZ25hdHVyZXMgd2hpY2ggZG9uJ3QgaGF2ZSBhbiBhY3R1YWwgZGVjbGFyYXRpb24uIFRoaXMgaGFwcGVucyBpZiBhIGNsYXNzXG4gIC8vIGRvZXMgbm90IGhhdmUgYW4gZXhwbGljaXRseSB3cml0dGVuIGNvbnN0cnVjdG9yLlxuICBpZiAoIW5vZGUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICB3aGlsZSAoIXRzLmlzU291cmNlRmlsZSgobm9kZSA9IG5vZGUucGFyZW50KSkpIHtcbiAgICBpZiAodHMuaXNDbGFzc0RlY2xhcmF0aW9uKG5vZGUpKSB7XG4gICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG4iXX0=
@@ -17,13 +17,10 @@ const upgrade_data_1 = require("../upgrade-data");
17
17
  * order to migrate outdated CSS selectors to the new selector.
18
18
  */
19
19
  class CssSelectorsMigration extends migration_1.Migration {
20
- constructor() {
21
- super(...arguments);
22
- /** Change data that upgrades to the specified target version. */
23
- this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'cssSelectors');
24
- // Only enable the migration rule if there is upgrade data.
25
- this.enabled = this.data.length !== 0;
26
- }
20
+ /** Change data that upgrades to the specified target version. */
21
+ data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'cssSelectors');
22
+ // Only enable the migration rule if there is upgrade data.
23
+ enabled = this.data.length !== 0;
27
24
  visitNode(node) {
28
25
  if (ts.isStringLiteralLike(node)) {
29
26
  this._visitStringLiteralLike(node);
@@ -72,4 +69,4 @@ class CssSelectorsMigration extends migration_1.Migration {
72
69
  }
73
70
  }
74
71
  exports.CssSelectorsMigration = CssSelectorsMigration;
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLXNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy9uZy11cGRhdGUvbWlncmF0aW9ucy9jc3Mtc2VsZWN0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILGlDQUFpQztBQUdqQywyREFBc0Q7QUFFdEQsbURBQThEO0FBQzlELGtEQUFtRTtBQUVuRTs7O0dBR0c7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHFCQUFzQjtJQUFqRTs7UUFDRSxpRUFBaUU7UUFDakUsU0FBSSxHQUE2QixJQUFBLG9DQUFxQixFQUFDLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztRQUU3RSwyREFBMkQ7UUFDM0QsWUFBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQXlEbkMsQ0FBQztJQXZEVSxTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRVEsYUFBYSxDQUFDLFFBQTBCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO2dCQUMxQyxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQztpQkFDcEQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7aUJBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLGVBQWUsQ0FBQyxVQUE0QjtRQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRTtnQkFDaEQsT0FBTzthQUNSO1lBRUQsSUFBQSxpQ0FBdUIsRUFBQyxVQUFVLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7aUJBQ3RELEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO2lCQUN4QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMvRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxJQUEwQjtRQUN4RCxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUU7WUFDcEUsT0FBTztTQUNSO1FBRUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFO2dCQUN0RCxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO2lCQUMvQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDO2lCQUN2QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFFBQXVCLEVBQUUsS0FBYSxFQUFFLElBQTRCO1FBQzNGLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDbEMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBOURELHNEQThEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7V29ya3NwYWNlUGF0aH0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvZmlsZS1zeXN0ZW0nO1xuaW1wb3J0IHtSZXNvbHZlZFJlc291cmNlfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9jb21wb25lbnQtcmVzb3VyY2UtY29sbGVjdG9yJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtDc3NTZWxlY3RvclVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhL2Nzcy1zZWxlY3RvcnMnO1xuaW1wb3J0IHtmaW5kQWxsU3Vic3RyaW5nSW5kaWNlc30gZnJvbSAnLi4vdHlwZXNjcmlwdC9saXRlcmFsJztcbmltcG9ydCB7Z2V0VmVyc2lvblVwZ3JhZGVEYXRhLCBVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB3YWxrcyB0aHJvdWdoIGV2ZXJ5IHN0cmluZyBsaXRlcmFsLCB0ZW1wbGF0ZSBhbmQgc3R5bGVzaGVldCBpblxuICogb3JkZXIgdG8gbWlncmF0ZSBvdXRkYXRlZCBDU1Mgc2VsZWN0b3JzIHRvIHRoZSBuZXcgc2VsZWN0b3IuXG4gKi9cbmV4cG9ydCBjbGFzcyBDc3NTZWxlY3RvcnNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YVtdID0gZ2V0VmVyc2lvblVwZ3JhZGVEYXRhKHRoaXMsICdjc3NTZWxlY3RvcnMnKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5kYXRhLmxlbmd0aCAhPT0gMDtcblxuICBvdmVycmlkZSB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc1N0cmluZ0xpdGVyYWxMaWtlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0VGVtcGxhdGUodGVtcGxhdGU6IFJlc29sdmVkUmVzb3VyY2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGEuZm9yRWFjaChkYXRhID0+IHtcbiAgICAgIGlmIChkYXRhLnJlcGxhY2VJbiAmJiAhZGF0YS5yZXBsYWNlSW4uaHRtbCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHRlbXBsYXRlLmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gdGVtcGxhdGUuc3RhcnQgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3Rvcih0ZW1wbGF0ZS5maWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0U3R5bGVzaGVldChzdHlsZXNoZWV0OiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnN0eWxlc2hlZXQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyhzdHlsZXNoZWV0LmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gc3R5bGVzaGVldC5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT4gdGhpcy5fcmVwbGFjZVNlbGVjdG9yKHN0eWxlc2hlZXQuZmlsZVBhdGgsIHN0YXJ0LCBkYXRhKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGU6IHRzLlN0cmluZ0xpdGVyYWxMaWtlKSB7XG4gICAgaWYgKG5vZGUucGFyZW50ICYmIG5vZGUucGFyZW50LmtpbmQgIT09IHRzLlN5bnRheEtpbmQuQ2FsbEV4cHJlc3Npb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB0ZXh0Q29udGVudCA9IG5vZGUuZ2V0VGV4dCgpO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlU3lzdGVtLnJlc29sdmUobm9kZS5nZXRTb3VyY2VGaWxlKCkuZmlsZU5hbWUpO1xuXG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnRzU3RyaW5nTGl0ZXJhbHMpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyh0ZXh0Q29udGVudCwgZGF0YS5yZXBsYWNlKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBub2RlLmdldFN0YXJ0KCkgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aDogV29ya3NwYWNlUGF0aCwgc3RhcnQ6IG51bWJlciwgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YSkge1xuICAgIHRoaXMuZmlsZVN5c3RlbVxuICAgICAgLmVkaXQoZmlsZVBhdGgpXG4gICAgICAucmVtb3ZlKHN0YXJ0LCBkYXRhLnJlcGxhY2UubGVuZ3RoKVxuICAgICAgLmluc2VydFJpZ2h0KHN0YXJ0LCBkYXRhLnJlcGxhY2VXaXRoKTtcbiAgfVxufVxuIl19
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLXNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy9uZy11cGRhdGUvbWlncmF0aW9ucy9jc3Mtc2VsZWN0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILGlDQUFpQztBQUdqQywyREFBc0Q7QUFFdEQsbURBQThEO0FBQzlELGtEQUFtRTtBQUVuRTs7O0dBR0c7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHFCQUFzQjtJQUMvRCxpRUFBaUU7SUFDakUsSUFBSSxHQUE2QixJQUFBLG9DQUFxQixFQUFDLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztJQUU3RSwyREFBMkQ7SUFDM0QsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUV4QixTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRVEsYUFBYSxDQUFDLFFBQTBCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO2dCQUMxQyxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQztpQkFDcEQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7aUJBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLGVBQWUsQ0FBQyxVQUE0QjtRQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRTtnQkFDaEQsT0FBTzthQUNSO1lBRUQsSUFBQSxpQ0FBdUIsRUFBQyxVQUFVLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7aUJBQ3RELEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO2lCQUN4QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMvRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxJQUEwQjtRQUN4RCxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUU7WUFDcEUsT0FBTztTQUNSO1FBRUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFO2dCQUN0RCxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO2lCQUMvQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDO2lCQUN2QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFFBQXVCLEVBQUUsS0FBYSxFQUFFLElBQTRCO1FBQzNGLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDbEMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBOURELHNEQThEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7V29ya3NwYWNlUGF0aH0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvZmlsZS1zeXN0ZW0nO1xuaW1wb3J0IHtSZXNvbHZlZFJlc291cmNlfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9jb21wb25lbnQtcmVzb3VyY2UtY29sbGVjdG9yJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtDc3NTZWxlY3RvclVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhL2Nzcy1zZWxlY3RvcnMnO1xuaW1wb3J0IHtmaW5kQWxsU3Vic3RyaW5nSW5kaWNlc30gZnJvbSAnLi4vdHlwZXNjcmlwdC9saXRlcmFsJztcbmltcG9ydCB7Z2V0VmVyc2lvblVwZ3JhZGVEYXRhLCBVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB3YWxrcyB0aHJvdWdoIGV2ZXJ5IHN0cmluZyBsaXRlcmFsLCB0ZW1wbGF0ZSBhbmQgc3R5bGVzaGVldCBpblxuICogb3JkZXIgdG8gbWlncmF0ZSBvdXRkYXRlZCBDU1Mgc2VsZWN0b3JzIHRvIHRoZSBuZXcgc2VsZWN0b3IuXG4gKi9cbmV4cG9ydCBjbGFzcyBDc3NTZWxlY3RvcnNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YVtdID0gZ2V0VmVyc2lvblVwZ3JhZGVEYXRhKHRoaXMsICdjc3NTZWxlY3RvcnMnKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5kYXRhLmxlbmd0aCAhPT0gMDtcblxuICBvdmVycmlkZSB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc1N0cmluZ0xpdGVyYWxMaWtlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0VGVtcGxhdGUodGVtcGxhdGU6IFJlc29sdmVkUmVzb3VyY2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGEuZm9yRWFjaChkYXRhID0+IHtcbiAgICAgIGlmIChkYXRhLnJlcGxhY2VJbiAmJiAhZGF0YS5yZXBsYWNlSW4uaHRtbCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHRlbXBsYXRlLmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gdGVtcGxhdGUuc3RhcnQgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3Rvcih0ZW1wbGF0ZS5maWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0U3R5bGVzaGVldChzdHlsZXNoZWV0OiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnN0eWxlc2hlZXQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyhzdHlsZXNoZWV0LmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gc3R5bGVzaGVldC5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT4gdGhpcy5fcmVwbGFjZVNlbGVjdG9yKHN0eWxlc2hlZXQuZmlsZVBhdGgsIHN0YXJ0LCBkYXRhKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGU6IHRzLlN0cmluZ0xpdGVyYWxMaWtlKSB7XG4gICAgaWYgKG5vZGUucGFyZW50ICYmIG5vZGUucGFyZW50LmtpbmQgIT09IHRzLlN5bnRheEtpbmQuQ2FsbEV4cHJlc3Npb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB0ZXh0Q29udGVudCA9IG5vZGUuZ2V0VGV4dCgpO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlU3lzdGVtLnJlc29sdmUobm9kZS5nZXRTb3VyY2VGaWxlKCkuZmlsZU5hbWUpO1xuXG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnRzU3RyaW5nTGl0ZXJhbHMpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyh0ZXh0Q29udGVudCwgZGF0YS5yZXBsYWNlKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBub2RlLmdldFN0YXJ0KCkgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aDogV29ya3NwYWNlUGF0aCwgc3RhcnQ6IG51bWJlciwgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YSkge1xuICAgIHRoaXMuZmlsZVN5c3RlbVxuICAgICAgLmVkaXQoZmlsZVBhdGgpXG4gICAgICAucmVtb3ZlKHN0YXJ0LCBkYXRhLnJlcGxhY2UubGVuZ3RoKVxuICAgICAgLmluc2VydFJpZ2h0KHN0YXJ0LCBkYXRhLnJlcGxhY2VXaXRoKTtcbiAgfVxufVxuIl19
@@ -17,13 +17,10 @@ const upgrade_data_1 = require("../upgrade-data");
17
17
  * order to migrate outdated CSS selectors to the new selector.
18
18
  */
19
19
  class CssSelectorsMigration extends migration_1.Migration {
20
- constructor() {
21
- super(...arguments);
22
- /** Change data that upgrades to the specified target version. */
23
- this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'cssSelectors');
24
- // Only enable the migration rule if there is upgrade data.
25
- this.enabled = this.data.length !== 0;
26
- }
20
+ /** Change data that upgrades to the specified target version. */
21
+ data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'cssSelectors');
22
+ // Only enable the migration rule if there is upgrade data.
23
+ enabled = this.data.length !== 0;
27
24
  visitNode(node) {
28
25
  if (ts.isStringLiteralLike(node)) {
29
26
  this._visitStringLiteralLike(node);
@@ -72,4 +69,4 @@ class CssSelectorsMigration extends migration_1.Migration {
72
69
  }
73
70
  }
74
71
  exports.CssSelectorsMigration = CssSelectorsMigration;
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLXNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy9uZy11cGRhdGUvbWlncmF0aW9ucy9jc3Mtc2VsZWN0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILGlDQUFpQztBQUdqQywyREFBc0Q7QUFFdEQsbURBQThEO0FBQzlELGtEQUFtRTtBQUVuRTs7O0dBR0c7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHFCQUFzQjtJQUFqRTs7UUFDRSxpRUFBaUU7UUFDakUsU0FBSSxHQUE2QixJQUFBLG9DQUFxQixFQUFDLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztRQUU3RSwyREFBMkQ7UUFDM0QsWUFBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQXlEbkMsQ0FBQztJQXZEVSxTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRVEsYUFBYSxDQUFDLFFBQTBCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO2dCQUMxQyxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQztpQkFDcEQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7aUJBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLGVBQWUsQ0FBQyxVQUE0QjtRQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRTtnQkFDaEQsT0FBTzthQUNSO1lBRUQsSUFBQSxpQ0FBdUIsRUFBQyxVQUFVLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7aUJBQ3RELEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO2lCQUN4QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMvRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxJQUEwQjtRQUN4RCxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUU7WUFDcEUsT0FBTztTQUNSO1FBRUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFO2dCQUN0RCxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO2lCQUMvQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDO2lCQUN2QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFFBQXVCLEVBQUUsS0FBYSxFQUFFLElBQTRCO1FBQzNGLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDbEMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBOURELHNEQThEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7V29ya3NwYWNlUGF0aH0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvZmlsZS1zeXN0ZW0nO1xuaW1wb3J0IHtSZXNvbHZlZFJlc291cmNlfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9jb21wb25lbnQtcmVzb3VyY2UtY29sbGVjdG9yJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtDc3NTZWxlY3RvclVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhL2Nzcy1zZWxlY3RvcnMnO1xuaW1wb3J0IHtmaW5kQWxsU3Vic3RyaW5nSW5kaWNlc30gZnJvbSAnLi4vdHlwZXNjcmlwdC9saXRlcmFsJztcbmltcG9ydCB7Z2V0VmVyc2lvblVwZ3JhZGVEYXRhLCBVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB3YWxrcyB0aHJvdWdoIGV2ZXJ5IHN0cmluZyBsaXRlcmFsLCB0ZW1wbGF0ZSBhbmQgc3R5bGVzaGVldCBpblxuICogb3JkZXIgdG8gbWlncmF0ZSBvdXRkYXRlZCBDU1Mgc2VsZWN0b3JzIHRvIHRoZSBuZXcgc2VsZWN0b3IuXG4gKi9cbmV4cG9ydCBjbGFzcyBDc3NTZWxlY3RvcnNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YVtdID0gZ2V0VmVyc2lvblVwZ3JhZGVEYXRhKHRoaXMsICdjc3NTZWxlY3RvcnMnKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5kYXRhLmxlbmd0aCAhPT0gMDtcblxuICBvdmVycmlkZSB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc1N0cmluZ0xpdGVyYWxMaWtlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0VGVtcGxhdGUodGVtcGxhdGU6IFJlc29sdmVkUmVzb3VyY2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGEuZm9yRWFjaChkYXRhID0+IHtcbiAgICAgIGlmIChkYXRhLnJlcGxhY2VJbiAmJiAhZGF0YS5yZXBsYWNlSW4uaHRtbCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHRlbXBsYXRlLmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gdGVtcGxhdGUuc3RhcnQgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3Rvcih0ZW1wbGF0ZS5maWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0U3R5bGVzaGVldChzdHlsZXNoZWV0OiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnN0eWxlc2hlZXQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyhzdHlsZXNoZWV0LmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gc3R5bGVzaGVldC5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT4gdGhpcy5fcmVwbGFjZVNlbGVjdG9yKHN0eWxlc2hlZXQuZmlsZVBhdGgsIHN0YXJ0LCBkYXRhKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGU6IHRzLlN0cmluZ0xpdGVyYWxMaWtlKSB7XG4gICAgaWYgKG5vZGUucGFyZW50ICYmIG5vZGUucGFyZW50LmtpbmQgIT09IHRzLlN5bnRheEtpbmQuQ2FsbEV4cHJlc3Npb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB0ZXh0Q29udGVudCA9IG5vZGUuZ2V0VGV4dCgpO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlU3lzdGVtLnJlc29sdmUobm9kZS5nZXRTb3VyY2VGaWxlKCkuZmlsZU5hbWUpO1xuXG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnRzU3RyaW5nTGl0ZXJhbHMpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyh0ZXh0Q29udGVudCwgZGF0YS5yZXBsYWNlKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBub2RlLmdldFN0YXJ0KCkgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aDogV29ya3NwYWNlUGF0aCwgc3RhcnQ6IG51bWJlciwgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YSkge1xuICAgIHRoaXMuZmlsZVN5c3RlbVxuICAgICAgLmVkaXQoZmlsZVBhdGgpXG4gICAgICAucmVtb3ZlKHN0YXJ0LCBkYXRhLnJlcGxhY2UubGVuZ3RoKVxuICAgICAgLmluc2VydFJpZ2h0KHN0YXJ0LCBkYXRhLnJlcGxhY2VXaXRoKTtcbiAgfVxufVxuIl19
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLXNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jZGsvc2NoZW1hdGljcy9uZy11cGRhdGUvbWlncmF0aW9ucy9jc3Mtc2VsZWN0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILGlDQUFpQztBQUdqQywyREFBc0Q7QUFFdEQsbURBQThEO0FBQzlELGtEQUFtRTtBQUVuRTs7O0dBR0c7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHFCQUFzQjtJQUMvRCxpRUFBaUU7SUFDakUsSUFBSSxHQUE2QixJQUFBLG9DQUFxQixFQUFDLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztJQUU3RSwyREFBMkQ7SUFDM0QsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUV4QixTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRVEsYUFBYSxDQUFDLFFBQTBCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO2dCQUMxQyxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQztpQkFDcEQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7aUJBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLGVBQWUsQ0FBQyxVQUE0QjtRQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRTtnQkFDaEQsT0FBTzthQUNSO1lBRUQsSUFBQSxpQ0FBdUIsRUFBQyxVQUFVLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7aUJBQ3RELEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO2lCQUN4QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMvRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxJQUEwQjtRQUN4RCxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUU7WUFDcEUsT0FBTztTQUNSO1FBRUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFO2dCQUN0RCxPQUFPO2FBQ1I7WUFFRCxJQUFBLGlDQUF1QixFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO2lCQUMvQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDO2lCQUN2QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFFBQXVCLEVBQUUsS0FBYSxFQUFFLElBQTRCO1FBQzNGLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDbEMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBOURELHNEQThEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7V29ya3NwYWNlUGF0aH0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvZmlsZS1zeXN0ZW0nO1xuaW1wb3J0IHtSZXNvbHZlZFJlc291cmNlfSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9jb21wb25lbnQtcmVzb3VyY2UtY29sbGVjdG9yJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtDc3NTZWxlY3RvclVwZ3JhZGVEYXRhfSBmcm9tICcuLi9kYXRhL2Nzcy1zZWxlY3RvcnMnO1xuaW1wb3J0IHtmaW5kQWxsU3Vic3RyaW5nSW5kaWNlc30gZnJvbSAnLi4vdHlwZXNjcmlwdC9saXRlcmFsJztcbmltcG9ydCB7Z2V0VmVyc2lvblVwZ3JhZGVEYXRhLCBVcGdyYWRlRGF0YX0gZnJvbSAnLi4vdXBncmFkZS1kYXRhJztcblxuLyoqXG4gKiBNaWdyYXRpb24gdGhhdCB3YWxrcyB0aHJvdWdoIGV2ZXJ5IHN0cmluZyBsaXRlcmFsLCB0ZW1wbGF0ZSBhbmQgc3R5bGVzaGVldCBpblxuICogb3JkZXIgdG8gbWlncmF0ZSBvdXRkYXRlZCBDU1Mgc2VsZWN0b3JzIHRvIHRoZSBuZXcgc2VsZWN0b3IuXG4gKi9cbmV4cG9ydCBjbGFzcyBDc3NTZWxlY3RvcnNNaWdyYXRpb24gZXh0ZW5kcyBNaWdyYXRpb248VXBncmFkZURhdGE+IHtcbiAgLyoqIENoYW5nZSBkYXRhIHRoYXQgdXBncmFkZXMgdG8gdGhlIHNwZWNpZmllZCB0YXJnZXQgdmVyc2lvbi4gKi9cbiAgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YVtdID0gZ2V0VmVyc2lvblVwZ3JhZGVEYXRhKHRoaXMsICdjc3NTZWxlY3RvcnMnKTtcblxuICAvLyBPbmx5IGVuYWJsZSB0aGUgbWlncmF0aW9uIHJ1bGUgaWYgdGhlcmUgaXMgdXBncmFkZSBkYXRhLlxuICBlbmFibGVkID0gdGhpcy5kYXRhLmxlbmd0aCAhPT0gMDtcblxuICBvdmVycmlkZSB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IHZvaWQge1xuICAgIGlmICh0cy5pc1N0cmluZ0xpdGVyYWxMaWtlKG5vZGUpKSB7XG4gICAgICB0aGlzLl92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0VGVtcGxhdGUodGVtcGxhdGU6IFJlc29sdmVkUmVzb3VyY2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGEuZm9yRWFjaChkYXRhID0+IHtcbiAgICAgIGlmIChkYXRhLnJlcGxhY2VJbiAmJiAhZGF0YS5yZXBsYWNlSW4uaHRtbCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHRlbXBsYXRlLmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gdGVtcGxhdGUuc3RhcnQgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3Rvcih0ZW1wbGF0ZS5maWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIHZpc2l0U3R5bGVzaGVldChzdHlsZXNoZWV0OiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnN0eWxlc2hlZXQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyhzdHlsZXNoZWV0LmNvbnRlbnQsIGRhdGEucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gc3R5bGVzaGVldC5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT4gdGhpcy5fcmVwbGFjZVNlbGVjdG9yKHN0eWxlc2hlZXQuZmlsZVBhdGgsIHN0YXJ0LCBkYXRhKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF92aXNpdFN0cmluZ0xpdGVyYWxMaWtlKG5vZGU6IHRzLlN0cmluZ0xpdGVyYWxMaWtlKSB7XG4gICAgaWYgKG5vZGUucGFyZW50ICYmIG5vZGUucGFyZW50LmtpbmQgIT09IHRzLlN5bnRheEtpbmQuQ2FsbEV4cHJlc3Npb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB0ZXh0Q29udGVudCA9IG5vZGUuZ2V0VGV4dCgpO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlU3lzdGVtLnJlc29sdmUobm9kZS5nZXRTb3VyY2VGaWxlKCkuZmlsZU5hbWUpO1xuXG4gICAgdGhpcy5kYXRhLmZvckVhY2goZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5yZXBsYWNlSW4gJiYgIWRhdGEucmVwbGFjZUluLnRzU3RyaW5nTGl0ZXJhbHMpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmaW5kQWxsU3Vic3RyaW5nSW5kaWNlcyh0ZXh0Q29udGVudCwgZGF0YS5yZXBsYWNlKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBub2RlLmdldFN0YXJ0KCkgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aCwgc3RhcnQsIGRhdGEpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aDogV29ya3NwYWNlUGF0aCwgc3RhcnQ6IG51bWJlciwgZGF0YTogQ3NzU2VsZWN0b3JVcGdyYWRlRGF0YSkge1xuICAgIHRoaXMuZmlsZVN5c3RlbVxuICAgICAgLmVkaXQoZmlsZVBhdGgpXG4gICAgICAucmVtb3ZlKHN0YXJ0LCBkYXRhLnJlcGxhY2UubGVuZ3RoKVxuICAgICAgLmluc2VydFJpZ2h0KHN0YXJ0LCBkYXRhLnJlcGxhY2VXaXRoKTtcbiAgfVxufVxuIl19
@@ -17,13 +17,10 @@ const upgrade_data_1 = require("../upgrade-data");
17
17
  * to migrate outdated element selectors to the new one.
18
18
  */
19
19
  class ElementSelectorsMigration extends migration_1.Migration {
20
- constructor() {
21
- super(...arguments);
22
- /** Change data that upgrades to the specified target version. */
23
- this.data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'elementSelectors');
24
- // Only enable the migration rule if there is upgrade data.
25
- this.enabled = this.data.length !== 0;
26
- }
20
+ /** Change data that upgrades to the specified target version. */
21
+ data = (0, upgrade_data_1.getVersionUpgradeData)(this, 'elementSelectors');
22
+ // Only enable the migration rule if there is upgrade data.
23
+ enabled = this.data.length !== 0;
27
24
  visitNode(node) {
28
25
  if (ts.isStringLiteralLike(node)) {
29
26
  this._visitStringLiteralLike(node);
@@ -63,4 +60,4 @@ class ElementSelectorsMigration extends migration_1.Migration {
63
60
  }
64
61
  }
65
62
  exports.ElementSelectorsMigration = ElementSelectorsMigration;
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1zZWxlY3RvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvZWxlbWVudC1zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBR2pDLDJEQUFzRDtBQUV0RCxtREFBOEQ7QUFDOUQsa0RBQW1FO0FBRW5FOzs7R0FHRztBQUNILE1BQWEseUJBQTBCLFNBQVEscUJBQXNCO0lBQXJFOztRQUNFLGlFQUFpRTtRQUNqRSxTQUFJLEdBQUcsSUFBQSxvQ0FBcUIsRUFBQyxJQUFJLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUV2RCwyREFBMkQ7UUFDM0QsWUFBTyxHQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQWlENUMsQ0FBQztJQS9DVSxTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRVEsYUFBYSxDQUFDLFFBQTBCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLElBQUEsaUNBQXVCLEVBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO2lCQUN4RCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDakYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVEsZUFBZSxDQUFDLFVBQTRCO1FBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLElBQUEsaUNBQXVCLEVBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO2lCQUMxRCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDeEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDbkYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sdUJBQXVCLENBQUMsSUFBMEI7UUFDeEQsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFO1lBQ3BFLE9BQU87U0FDUjtRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNuQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFeEUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDM0IsSUFBQSxpQ0FBdUIsRUFBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQztpQkFDbkQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLE1BQU0sQ0FBQztpQkFDdkMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN4RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0IsQ0FDdEIsUUFBdUIsRUFDdkIsS0FBYSxFQUNiLElBQWdDO1FBRWhDLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDbEMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBdERELDhEQXNEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7UmVzb2x2ZWRSZXNvdXJjZX0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvY29tcG9uZW50LXJlc291cmNlLWNvbGxlY3Rvcic7XG5pbXBvcnQge1dvcmtzcGFjZVBhdGh9IGZyb20gJy4uLy4uL3VwZGF0ZS10b29sL2ZpbGUtc3lzdGVtJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtFbGVtZW50U2VsZWN0b3JVcGdyYWRlRGF0YX0gZnJvbSAnLi4vZGF0YS9lbGVtZW50LXNlbGVjdG9ycyc7XG5pbXBvcnQge2ZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzfSBmcm9tICcuLi90eXBlc2NyaXB0L2xpdGVyYWwnO1xuaW1wb3J0IHtnZXRWZXJzaW9uVXBncmFkZURhdGEsIFVwZ3JhZGVEYXRhfSBmcm9tICcuLi91cGdyYWRlLWRhdGEnO1xuXG4vKipcbiAqIE1pZ3JhdGlvbiB0aGF0IHdhbGtzIHRocm91Z2ggZXZlcnkgc3RyaW5nIGxpdGVyYWwsIHRlbXBsYXRlIGFuZCBzdHlsZXNoZWV0IGluIG9yZGVyXG4gKiB0byBtaWdyYXRlIG91dGRhdGVkIGVsZW1lbnQgc2VsZWN0b3JzIHRvIHRoZSBuZXcgb25lLlxuICovXG5leHBvcnQgY2xhc3MgRWxlbWVudFNlbGVjdG9yc01pZ3JhdGlvbiBleHRlbmRzIE1pZ3JhdGlvbjxVcGdyYWRlRGF0YT4ge1xuICAvKiogQ2hhbmdlIGRhdGEgdGhhdCB1cGdyYWRlcyB0byB0aGUgc3BlY2lmaWVkIHRhcmdldCB2ZXJzaW9uLiAqL1xuICBkYXRhID0gZ2V0VmVyc2lvblVwZ3JhZGVEYXRhKHRoaXMsICdlbGVtZW50U2VsZWN0b3JzJyk7XG5cbiAgLy8gT25seSBlbmFibGUgdGhlIG1pZ3JhdGlvbiBydWxlIGlmIHRoZXJlIGlzIHVwZ3JhZGUgZGF0YS5cbiAgZW5hYmxlZDogYm9vbGVhbiA9IHRoaXMuZGF0YS5sZW5ndGggIT09IDA7XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNTdHJpbmdMaXRlcmFsTGlrZShub2RlKSkge1xuICAgICAgdGhpcy5fdmlzaXRTdHJpbmdMaXRlcmFsTGlrZShub2RlKTtcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSB2aXNpdFRlbXBsYXRlKHRlbXBsYXRlOiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goc2VsZWN0b3IgPT4ge1xuICAgICAgZmluZEFsbFN1YnN0cmluZ0luZGljZXModGVtcGxhdGUuY29udGVudCwgc2VsZWN0b3IucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gdGVtcGxhdGUuc3RhcnQgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3Rvcih0ZW1wbGF0ZS5maWxlUGF0aCwgc3RhcnQsIHNlbGVjdG9yKSk7XG4gICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSB2aXNpdFN0eWxlc2hlZXQoc3R5bGVzaGVldDogUmVzb2x2ZWRSZXNvdXJjZSk6IHZvaWQge1xuICAgIHRoaXMuZGF0YS5mb3JFYWNoKHNlbGVjdG9yID0+IHtcbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHN0eWxlc2hlZXQuY29udGVudCwgc2VsZWN0b3IucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gc3R5bGVzaGVldC5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT4gdGhpcy5fcmVwbGFjZVNlbGVjdG9yKHN0eWxlc2hlZXQuZmlsZVBhdGgsIHN0YXJ0LCBzZWxlY3RvcikpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdmlzaXRTdHJpbmdMaXRlcmFsTGlrZShub2RlOiB0cy5TdHJpbmdMaXRlcmFsTGlrZSkge1xuICAgIGlmIChub2RlLnBhcmVudCAmJiBub2RlLnBhcmVudC5raW5kICE9PSB0cy5TeW50YXhLaW5kLkNhbGxFeHByZXNzaW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdGV4dENvbnRlbnQgPSBub2RlLmdldFRleHQoKTtcbiAgICBjb25zdCBmaWxlUGF0aCA9IHRoaXMuZmlsZVN5c3RlbS5yZXNvbHZlKG5vZGUuZ2V0U291cmNlRmlsZSgpLmZpbGVOYW1lKTtcblxuICAgIHRoaXMuZGF0YS5mb3JFYWNoKHNlbGVjdG9yID0+IHtcbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHRleHRDb250ZW50LCBzZWxlY3Rvci5yZXBsYWNlKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBub2RlLmdldFN0YXJ0KCkgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aCwgc3RhcnQsIHNlbGVjdG9yKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9yZXBsYWNlU2VsZWN0b3IoXG4gICAgZmlsZVBhdGg6IFdvcmtzcGFjZVBhdGgsXG4gICAgc3RhcnQ6IG51bWJlcixcbiAgICBkYXRhOiBFbGVtZW50U2VsZWN0b3JVcGdyYWRlRGF0YSxcbiAgKSB7XG4gICAgdGhpcy5maWxlU3lzdGVtXG4gICAgICAuZWRpdChmaWxlUGF0aClcbiAgICAgIC5yZW1vdmUoc3RhcnQsIGRhdGEucmVwbGFjZS5sZW5ndGgpXG4gICAgICAuaW5zZXJ0UmlnaHQoc3RhcnQsIGRhdGEucmVwbGFjZVdpdGgpO1xuICB9XG59XG4iXX0=
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1zZWxlY3RvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2RrL3NjaGVtYXRpY3MvbmctdXBkYXRlL21pZ3JhdGlvbnMvZWxlbWVudC1zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsaUNBQWlDO0FBR2pDLDJEQUFzRDtBQUV0RCxtREFBOEQ7QUFDOUQsa0RBQW1FO0FBRW5FOzs7R0FHRztBQUNILE1BQWEseUJBQTBCLFNBQVEscUJBQXNCO0lBQ25FLGlFQUFpRTtJQUNqRSxJQUFJLEdBQUcsSUFBQSxvQ0FBcUIsRUFBQyxJQUFJLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUV2RCwyREFBMkQ7SUFDM0QsT0FBTyxHQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUVqQyxTQUFTLENBQUMsSUFBYTtRQUM5QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRVEsYUFBYSxDQUFDLFFBQTBCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLElBQUEsaUNBQXVCLEVBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO2lCQUN4RCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDakYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVEsZUFBZSxDQUFDLFVBQTRCO1FBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLElBQUEsaUNBQXVCLEVBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO2lCQUMxRCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztpQkFDeEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDbkYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sdUJBQXVCLENBQUMsSUFBMEI7UUFDeEQsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFO1lBQ3BFLE9BQU87U0FDUjtRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNuQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFeEUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDM0IsSUFBQSxpQ0FBdUIsRUFBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQztpQkFDbkQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLE1BQU0sQ0FBQztpQkFDdkMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN4RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0IsQ0FDdEIsUUFBdUIsRUFDdkIsS0FBYSxFQUNiLElBQWdDO1FBRWhDLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDbEMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBdERELDhEQXNEQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7UmVzb2x2ZWRSZXNvdXJjZX0gZnJvbSAnLi4vLi4vdXBkYXRlLXRvb2wvY29tcG9uZW50LXJlc291cmNlLWNvbGxlY3Rvcic7XG5pbXBvcnQge1dvcmtzcGFjZVBhdGh9IGZyb20gJy4uLy4uL3VwZGF0ZS10b29sL2ZpbGUtc3lzdGVtJztcbmltcG9ydCB7TWlncmF0aW9ufSBmcm9tICcuLi8uLi91cGRhdGUtdG9vbC9taWdyYXRpb24nO1xuaW1wb3J0IHtFbGVtZW50U2VsZWN0b3JVcGdyYWRlRGF0YX0gZnJvbSAnLi4vZGF0YS9lbGVtZW50LXNlbGVjdG9ycyc7XG5pbXBvcnQge2ZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzfSBmcm9tICcuLi90eXBlc2NyaXB0L2xpdGVyYWwnO1xuaW1wb3J0IHtnZXRWZXJzaW9uVXBncmFkZURhdGEsIFVwZ3JhZGVEYXRhfSBmcm9tICcuLi91cGdyYWRlLWRhdGEnO1xuXG4vKipcbiAqIE1pZ3JhdGlvbiB0aGF0IHdhbGtzIHRocm91Z2ggZXZlcnkgc3RyaW5nIGxpdGVyYWwsIHRlbXBsYXRlIGFuZCBzdHlsZXNoZWV0IGluIG9yZGVyXG4gKiB0byBtaWdyYXRlIG91dGRhdGVkIGVsZW1lbnQgc2VsZWN0b3JzIHRvIHRoZSBuZXcgb25lLlxuICovXG5leHBvcnQgY2xhc3MgRWxlbWVudFNlbGVjdG9yc01pZ3JhdGlvbiBleHRlbmRzIE1pZ3JhdGlvbjxVcGdyYWRlRGF0YT4ge1xuICAvKiogQ2hhbmdlIGRhdGEgdGhhdCB1cGdyYWRlcyB0byB0aGUgc3BlY2lmaWVkIHRhcmdldCB2ZXJzaW9uLiAqL1xuICBkYXRhID0gZ2V0VmVyc2lvblVwZ3JhZGVEYXRhKHRoaXMsICdlbGVtZW50U2VsZWN0b3JzJyk7XG5cbiAgLy8gT25seSBlbmFibGUgdGhlIG1pZ3JhdGlvbiBydWxlIGlmIHRoZXJlIGlzIHVwZ3JhZGUgZGF0YS5cbiAgZW5hYmxlZDogYm9vbGVhbiA9IHRoaXMuZGF0YS5sZW5ndGggIT09IDA7XG5cbiAgb3ZlcnJpZGUgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpOiB2b2lkIHtcbiAgICBpZiAodHMuaXNTdHJpbmdMaXRlcmFsTGlrZShub2RlKSkge1xuICAgICAgdGhpcy5fdmlzaXRTdHJpbmdMaXRlcmFsTGlrZShub2RlKTtcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSB2aXNpdFRlbXBsYXRlKHRlbXBsYXRlOiBSZXNvbHZlZFJlc291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goc2VsZWN0b3IgPT4ge1xuICAgICAgZmluZEFsbFN1YnN0cmluZ0luZGljZXModGVtcGxhdGUuY29udGVudCwgc2VsZWN0b3IucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gdGVtcGxhdGUuc3RhcnQgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3Rvcih0ZW1wbGF0ZS5maWxlUGF0aCwgc3RhcnQsIHNlbGVjdG9yKSk7XG4gICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSB2aXNpdFN0eWxlc2hlZXQoc3R5bGVzaGVldDogUmVzb2x2ZWRSZXNvdXJjZSk6IHZvaWQge1xuICAgIHRoaXMuZGF0YS5mb3JFYWNoKHNlbGVjdG9yID0+IHtcbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHN0eWxlc2hlZXQuY29udGVudCwgc2VsZWN0b3IucmVwbGFjZSlcbiAgICAgICAgLm1hcChvZmZzZXQgPT4gc3R5bGVzaGVldC5zdGFydCArIG9mZnNldClcbiAgICAgICAgLmZvckVhY2goc3RhcnQgPT4gdGhpcy5fcmVwbGFjZVNlbGVjdG9yKHN0eWxlc2hlZXQuZmlsZVBhdGgsIHN0YXJ0LCBzZWxlY3RvcikpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdmlzaXRTdHJpbmdMaXRlcmFsTGlrZShub2RlOiB0cy5TdHJpbmdMaXRlcmFsTGlrZSkge1xuICAgIGlmIChub2RlLnBhcmVudCAmJiBub2RlLnBhcmVudC5raW5kICE9PSB0cy5TeW50YXhLaW5kLkNhbGxFeHByZXNzaW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdGV4dENvbnRlbnQgPSBub2RlLmdldFRleHQoKTtcbiAgICBjb25zdCBmaWxlUGF0aCA9IHRoaXMuZmlsZVN5c3RlbS5yZXNvbHZlKG5vZGUuZ2V0U291cmNlRmlsZSgpLmZpbGVOYW1lKTtcblxuICAgIHRoaXMuZGF0YS5mb3JFYWNoKHNlbGVjdG9yID0+IHtcbiAgICAgIGZpbmRBbGxTdWJzdHJpbmdJbmRpY2VzKHRleHRDb250ZW50LCBzZWxlY3Rvci5yZXBsYWNlKVxuICAgICAgICAubWFwKG9mZnNldCA9PiBub2RlLmdldFN0YXJ0KCkgKyBvZmZzZXQpXG4gICAgICAgIC5mb3JFYWNoKHN0YXJ0ID0+IHRoaXMuX3JlcGxhY2VTZWxlY3RvcihmaWxlUGF0aCwgc3RhcnQsIHNlbGVjdG9yKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9yZXBsYWNlU2VsZWN0b3IoXG4gICAgZmlsZVBhdGg6IFdvcmtzcGFjZVBhdGgsXG4gICAgc3RhcnQ6IG51bWJlcixcbiAgICBkYXRhOiBFbGVtZW50U2VsZWN0b3JVcGdyYWRlRGF0YSxcbiAgKSB7XG4gICAgdGhpcy5maWxlU3lzdGVtXG4gICAgICAuZWRpdChmaWxlUGF0aClcbiAgICAgIC5yZW1vdmUoc3RhcnQsIGRhdGEucmVwbGFjZS5sZW5ndGgpXG4gICAgICAuaW5zZXJ0UmlnaHQoc3RhcnQsIGRhdGEucmVwbGFjZVdpdGgpO1xuICB9XG59XG4iXX0=