@angular/compiler-cli 8.0.0 → 8.1.0-beta.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 (131) hide show
  1. package/ngcc/index.d.ts +1 -0
  2. package/ngcc/index.js +1 -1
  3. package/ngcc/main-ngcc.js +4 -4
  4. package/ngcc/src/analysis/decoration_analyzer.d.ts +5 -1
  5. package/ngcc/src/analysis/decoration_analyzer.js +12 -12
  6. package/ngcc/src/analysis/module_with_providers_analyzer.js +2 -2
  7. package/ngcc/src/analysis/private_declarations_analyzer.d.ts +3 -2
  8. package/ngcc/src/analysis/private_declarations_analyzer.js +8 -7
  9. package/ngcc/src/dependencies/commonjs_dependency_host.d.ts +46 -0
  10. package/ngcc/src/dependencies/commonjs_dependency_host.js +133 -0
  11. package/ngcc/src/dependencies/dependency_host.d.ts +17 -0
  12. package/ngcc/src/dependencies/dependency_host.js +20 -0
  13. package/ngcc/src/{packages → dependencies}/dependency_resolver.d.ts +13 -8
  14. package/ngcc/src/dependencies/dependency_resolver.js +138 -0
  15. package/ngcc/src/dependencies/esm_dependency_host.d.ts +62 -0
  16. package/ngcc/src/dependencies/esm_dependency_host.js +122 -0
  17. package/ngcc/src/dependencies/module_resolver.d.ts +139 -0
  18. package/ngcc/src/dependencies/module_resolver.js +297 -0
  19. package/ngcc/src/dependencies/umd_dependency_host.d.ts +46 -0
  20. package/ngcc/src/dependencies/umd_dependency_host.js +114 -0
  21. package/ngcc/src/file_system/file_system.d.ts +36 -0
  22. package/ngcc/src/file_system/file_system.js +20 -0
  23. package/ngcc/src/file_system/node_js_file_system.d.ts +27 -0
  24. package/ngcc/src/file_system/node_js_file_system.js +44 -0
  25. package/ngcc/src/host/commonjs_host.d.ts +43 -0
  26. package/ngcc/src/host/commonjs_host.js +187 -0
  27. package/ngcc/src/host/esm2015_host.d.ts +8 -10
  28. package/ngcc/src/host/esm2015_host.js +70 -40
  29. package/ngcc/src/host/esm5_host.js +3 -3
  30. package/ngcc/src/host/umd_host.d.ts +51 -0
  31. package/ngcc/src/host/umd_host.js +250 -0
  32. package/ngcc/src/main.d.ts +7 -8
  33. package/ngcc/src/main.js +64 -48
  34. package/ngcc/src/packages/build_marker.d.ts +3 -2
  35. package/ngcc/src/packages/build_marker.js +5 -6
  36. package/ngcc/src/packages/bundle_program.d.ts +13 -4
  37. package/ngcc/src/packages/bundle_program.js +11 -12
  38. package/ngcc/src/packages/entry_point.d.ts +6 -10
  39. package/ngcc/src/packages/entry_point.js +28 -24
  40. package/ngcc/src/packages/entry_point_bundle.d.ts +3 -1
  41. package/ngcc/src/packages/entry_point_bundle.js +10 -21
  42. package/ngcc/src/packages/entry_point_finder.d.ts +33 -3
  43. package/ngcc/src/packages/entry_point_finder.js +80 -18
  44. package/ngcc/src/packages/ngcc_compiler_host.d.ts +31 -0
  45. package/ngcc/src/packages/ngcc_compiler_host.js +108 -0
  46. package/ngcc/src/packages/transformer.d.ts +7 -5
  47. package/ngcc/src/packages/transformer.js +36 -12
  48. package/ngcc/src/rendering/commonjs_rendering_formatter.d.ts +25 -0
  49. package/ngcc/src/rendering/commonjs_rendering_formatter.js +89 -0
  50. package/ngcc/src/rendering/dts_renderer.d.ts +51 -0
  51. package/ngcc/src/rendering/dts_renderer.js +135 -0
  52. package/ngcc/src/rendering/esm5_rendering_formatter.d.ts +21 -0
  53. package/ngcc/src/rendering/esm5_rendering_formatter.js +44 -0
  54. package/ngcc/src/rendering/esm_rendering_formatter.d.ts +63 -0
  55. package/ngcc/src/rendering/esm_rendering_formatter.js +202 -0
  56. package/ngcc/src/rendering/renderer.d.ts +16 -112
  57. package/ngcc/src/rendering/renderer.js +38 -285
  58. package/ngcc/src/rendering/rendering_formatter.d.ts +35 -0
  59. package/ngcc/src/rendering/rendering_formatter.js +14 -0
  60. package/ngcc/src/rendering/source_maps.d.ts +45 -0
  61. package/ngcc/src/rendering/source_maps.js +129 -0
  62. package/ngcc/src/rendering/umd_rendering_formatter.d.ts +28 -0
  63. package/ngcc/src/rendering/umd_rendering_formatter.js +222 -0
  64. package/ngcc/src/rendering/utils.d.ts +25 -0
  65. package/ngcc/src/rendering/utils.js +34 -0
  66. package/ngcc/src/utils.d.ts +12 -0
  67. package/ngcc/src/utils.js +10 -1
  68. package/ngcc/src/writing/file_writer.d.ts +2 -2
  69. package/ngcc/src/writing/file_writer.js +1 -1
  70. package/ngcc/src/writing/in_place_file_writer.d.ts +6 -10
  71. package/ngcc/src/writing/in_place_file_writer.js +18 -19
  72. package/ngcc/src/writing/new_entry_point_file_writer.d.ts +4 -4
  73. package/ngcc/src/writing/new_entry_point_file_writer.js +24 -25
  74. package/package.json +2 -2
  75. package/src/ngtsc/annotations/src/base_def.d.ts +5 -4
  76. package/src/ngtsc/annotations/src/base_def.js +12 -3
  77. package/src/ngtsc/annotations/src/component.d.ts +0 -1
  78. package/src/ngtsc/annotations/src/component.js +2 -5
  79. package/src/ngtsc/annotations/src/directive.d.ts +2 -1
  80. package/src/ngtsc/annotations/src/directive.js +5 -4
  81. package/src/ngtsc/annotations/src/injectable.js +1 -3
  82. package/src/ngtsc/annotations/src/ng_module.d.ts +2 -1
  83. package/src/ngtsc/annotations/src/ng_module.js +17 -10
  84. package/src/ngtsc/annotations/src/pipe.js +1 -1
  85. package/src/ngtsc/annotations/src/util.js +7 -4
  86. package/src/ngtsc/imports/src/emitter.d.ts +8 -6
  87. package/src/ngtsc/imports/src/emitter.js +10 -38
  88. package/src/ngtsc/imports/src/resolver.js +4 -5
  89. package/src/ngtsc/incremental/src/state.d.ts +15 -3
  90. package/src/ngtsc/incremental/src/state.js +72 -52
  91. package/src/ngtsc/metadata/src/api.d.ts +18 -1
  92. package/src/ngtsc/metadata/src/api.js +1 -1
  93. package/src/ngtsc/metadata/src/util.d.ts +2 -2
  94. package/src/ngtsc/metadata/src/util.js +28 -9
  95. package/src/ngtsc/partial_evaluator/index.d.ts +1 -1
  96. package/src/ngtsc/partial_evaluator/index.js +1 -1
  97. package/src/ngtsc/partial_evaluator/src/dynamic.d.ts +2 -1
  98. package/src/ngtsc/partial_evaluator/src/dynamic.js +1 -1
  99. package/src/ngtsc/partial_evaluator/src/interface.d.ts +10 -3
  100. package/src/ngtsc/partial_evaluator/src/interface.js +6 -7
  101. package/src/ngtsc/partial_evaluator/src/interpreter.d.ts +4 -3
  102. package/src/ngtsc/partial_evaluator/src/interpreter.js +11 -9
  103. package/src/ngtsc/path/src/logical.js +4 -3
  104. package/src/ngtsc/path/src/types.d.ts +19 -7
  105. package/src/ngtsc/path/src/types.js +48 -9
  106. package/src/ngtsc/program.js +13 -12
  107. package/src/ngtsc/scope/src/local.d.ts +23 -5
  108. package/src/ngtsc/scope/src/local.js +34 -11
  109. package/src/ngtsc/shims/src/factory_generator.js +4 -2
  110. package/src/ngtsc/transform/src/api.d.ts +0 -1
  111. package/src/ngtsc/transform/src/api.js +1 -1
  112. package/src/ngtsc/transform/src/compilation.d.ts +4 -2
  113. package/src/ngtsc/transform/src/compilation.js +22 -20
  114. package/src/ngtsc/translator/index.d.ts +1 -1
  115. package/src/ngtsc/translator/index.js +1 -1
  116. package/src/ngtsc/translator/src/translator.d.ts +21 -8
  117. package/src/ngtsc/translator/src/translator.js +3 -12
  118. package/src/ngtsc/typecheck/src/api.d.ts +2 -1
  119. package/src/ngtsc/typecheck/src/api.js +1 -1
  120. package/src/ngtsc/typecheck/src/expression.js +104 -88
  121. package/src/ngtsc/typecheck/src/type_check_block.js +17 -11
  122. package/src/ngtsc/util/src/typescript.d.ts +7 -0
  123. package/src/ngtsc/util/src/typescript.js +17 -1
  124. package/src/version.js +1 -1
  125. package/ngcc/src/packages/dependency_host.d.ts +0 -84
  126. package/ngcc/src/packages/dependency_host.js +0 -164
  127. package/ngcc/src/packages/dependency_resolver.js +0 -126
  128. package/ngcc/src/rendering/esm5_renderer.d.ts +0 -14
  129. package/ngcc/src/rendering/esm5_renderer.js +0 -47
  130. package/ngcc/src/rendering/esm_renderer.d.ts +0 -30
  131. package/ngcc/src/rendering/esm_renderer.js +0 -141
@@ -85,17 +85,36 @@
85
85
  }
86
86
  exports.readStringArrayType = readStringArrayType;
87
87
  function extractDirectiveGuards(node, reflector) {
88
- var methods = nodeStaticMethodNames(node, reflector);
89
- var ngTemplateGuards = methods.filter(function (method) { return method.startsWith('ngTemplateGuard_'); })
90
- .map(function (method) { return method.split('_', 2)[1]; });
91
- var hasNgTemplateContextGuard = methods.some(function (name) { return name === 'ngTemplateContextGuard'; });
88
+ var staticMembers = reflector.getMembersOfClass(node).filter(function (member) { return member.isStatic; });
89
+ var ngTemplateGuards = staticMembers.map(extractTemplateGuard)
90
+ .filter(function (guard) { return guard !== null; });
91
+ var hasNgTemplateContextGuard = staticMembers.some(function (member) { return member.kind === reflection_1.ClassMemberKind.Method && member.name === 'ngTemplateContextGuard'; });
92
92
  return { hasNgTemplateContextGuard: hasNgTemplateContextGuard, ngTemplateGuards: ngTemplateGuards };
93
93
  }
94
94
  exports.extractDirectiveGuards = extractDirectiveGuards;
95
- function nodeStaticMethodNames(node, reflector) {
96
- return reflector.getMembersOfClass(node)
97
- .filter(function (member) { return member.kind === reflection_1.ClassMemberKind.Method && member.isStatic; })
98
- .map(function (member) { return member.name; });
95
+ function extractTemplateGuard(member) {
96
+ if (!member.name.startsWith('ngTemplateGuard_')) {
97
+ return null;
98
+ }
99
+ var inputName = member.name.split('_', 2)[1];
100
+ if (member.kind === reflection_1.ClassMemberKind.Property) {
101
+ var type = null;
102
+ if (member.type !== null && ts.isLiteralTypeNode(member.type) &&
103
+ ts.isStringLiteral(member.type.literal)) {
104
+ type = member.type.literal.text;
105
+ }
106
+ // Only property members with string literal type 'binding' are considered as template guard.
107
+ if (type !== 'binding') {
108
+ return null;
109
+ }
110
+ return { inputName: inputName, type: type };
111
+ }
112
+ else if (member.kind === reflection_1.ClassMemberKind.Method) {
113
+ return { inputName: inputName, type: 'invocation' };
114
+ }
115
+ else {
116
+ return null;
117
+ }
99
118
  }
100
119
  /**
101
120
  * A `MetadataReader` that reads from an ordered set of child readers until it obtains the requested
@@ -172,4 +191,4 @@
172
191
  }());
173
192
  exports.CompoundMetadataReader = CompoundMetadataReader;
174
193
  });
175
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvbWV0YWRhdGEvc3JjL3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7O0lBRUgsK0JBQWlDO0lBRWpDLG1FQUF3QztJQUN4Qyx5RUFBNEk7SUFDNUksa0ZBQXdEO0lBSXhELFNBQWdCLHlCQUF5QixDQUNyQyxPQUF1QixFQUFFLEdBQWdCLEVBQUUsb0JBQW1DLEVBQzlFLGlCQUF5QjtRQUMzQixJQUFJLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM1QixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsT0FBTyxHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxVQUFBLE9BQU87WUFDakMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTJCLDBCQUFhLENBQUMsT0FBTyxDQUFHLENBQUMsQ0FBQzthQUN0RTtZQUNELElBQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDeEIsSUFBQSwrREFBNEQsRUFBM0QsY0FBSSxFQUFFLGNBQXFELENBQUM7WUFDbkUsSUFBSSxDQUFDLG9DQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFvQywwQkFBYSxDQUFDLElBQUksQ0FBRyxDQUFDLENBQUM7YUFDNUU7WUFDRCxJQUFNLFNBQVMsR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUM7WUFDekYsSUFBSSxT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QkFDZixJQUFNLElBQUksR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQzlDLElBQUksSUFBSSxLQUFLLElBQUksRUFBRTt3QkFDakIsT0FBTyxJQUFJLENBQUM7cUJBQ2I7aUJBQ0Y7Ozs7Ozs7OztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELGdEQUFlLEdBQWYsVUFBZ0IsSUFBaUQ7OztnQkFDL0QsS0FBcUIsSUFBQSxLQUFBLGlCQUFBLElBQUksQ0FBQyxPQUFPLENBQUEsZ0JBQUEsNEJBQUU7b0JBQTlCLElBQU0sTUFBTSxXQUFBO29CQUNmLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQzFDLElBQUksSUFBSSxLQUFLLElBQUksRUFBRTt3QkFDakIsT0FBTyxJQUFJLENBQUM7cUJBQ2I7aUJBQ0Y7Ozs7Ozs7OztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNILDZCQUFDO0lBQUQsQ0FBQyxBQS9CRCxJQStCQztJQS9CWSx3REFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuXG5pbXBvcnQge1JlZmVyZW5jZX0gZnJvbSAnLi4vLi4vaW1wb3J0cyc7XG5pbXBvcnQge0NsYXNzRGVjbGFyYXRpb24sIENsYXNzTWVtYmVyS2luZCwgUmVmbGVjdGlvbkhvc3QsIGlzTmFtZWRDbGFzc0RlY2xhcmF0aW9uLCByZWZsZWN0VHlwZUVudGl0eVRvRGVjbGFyYXRpb259IGZyb20gJy4uLy4uL3JlZmxlY3Rpb24nO1xuaW1wb3J0IHtub2RlRGVidWdJbmZvfSBmcm9tICcuLi8uLi91dGlsL3NyYy90eXBlc2NyaXB0JztcblxuaW1wb3J0IHtEaXJlY3RpdmVNZXRhLCBNZXRhZGF0YVJlYWRlciwgTmdNb2R1bGVNZXRhLCBQaXBlTWV0YX0gZnJvbSAnLi9hcGknO1xuXG5leHBvcnQgZnVuY3Rpb24gZXh0cmFjdFJlZmVyZW5jZXNGcm9tVHlwZShcbiAgICBjaGVja2VyOiB0cy5UeXBlQ2hlY2tlciwgZGVmOiB0cy5UeXBlTm9kZSwgbmdNb2R1bGVJbXBvcnRlZEZyb206IHN0cmluZyB8IG51bGwsXG4gICAgcmVzb2x1dGlvbkNvbnRleHQ6IHN0cmluZyk6IFJlZmVyZW5jZTxDbGFzc0RlY2xhcmF0aW9uPltdIHtcbiAgaWYgKCF0cy5pc1R1cGxlVHlwZU5vZGUoZGVmKSkge1xuICAgIHJldHVybiBbXTtcbiAgfVxuICByZXR1cm4gZGVmLmVsZW1lbnRUeXBlcy5tYXAoZWxlbWVudCA9PiB7XG4gICAgaWYgKCF0cy5pc1R5cGVRdWVyeU5vZGUoZWxlbWVudCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgVHlwZVF1ZXJ5Tm9kZTogJHtub2RlRGVidWdJbmZvKGVsZW1lbnQpfWApO1xuICAgIH1cbiAgICBjb25zdCB0eXBlID0gZWxlbWVudC5leHByTmFtZTtcbiAgICBjb25zdCB7bm9kZSwgZnJvbX0gPSByZWZsZWN0VHlwZUVudGl0eVRvRGVjbGFyYXRpb24odHlwZSwgY2hlY2tlcik7XG4gICAgaWYgKCFpc05hbWVkQ2xhc3NEZWNsYXJhdGlvbihub2RlKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCBuYW1lZCBDbGFzc0RlY2xhcmF0aW9uOiAke25vZGVEZWJ1Z0luZm8obm9kZSl9YCk7XG4gICAgfVxuICAgIGNvbnN0IHNwZWNpZmllciA9IChmcm9tICE9PSBudWxsICYmICFmcm9tLnN0YXJ0c1dpdGgoJy4nKSA/IGZyb20gOiBuZ01vZHVsZUltcG9ydGVkRnJvbSk7XG4gICAgaWYgKHNwZWNpZmllciAhPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG5ldyBSZWZlcmVuY2Uobm9kZSwge3NwZWNpZmllciwgcmVzb2x1dGlvbkNvbnRleHR9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5ldyBSZWZlcmVuY2Uobm9kZSk7XG4gICAgfVxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRTdHJpbmdUeXBlKHR5cGU6IHRzLlR5cGVOb2RlKTogc3RyaW5nfG51bGwge1xuICBpZiAoIXRzLmlzTGl0ZXJhbFR5cGVOb2RlKHR5cGUpIHx8ICF0cy5pc1N0cmluZ0xpdGVyYWwodHlwZS5saXRlcmFsKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiB0eXBlLmxpdGVyYWwudGV4dDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRTdHJpbmdNYXBUeXBlKHR5cGU6IHRzLlR5cGVOb2RlKToge1trZXk6IHN0cmluZ106IHN0cmluZ30ge1xuICBpZiAoIXRzLmlzVHlwZUxpdGVyYWxOb2RlKHR5cGUpKSB7XG4gICAgcmV0dXJuIHt9O1xuICB9XG4gIGNvbnN0IG9iajoge1trZXk6IHN0cmluZ106IHN0cmluZ30gPSB7fTtcbiAgdHlwZS5tZW1iZXJzLmZvckVhY2gobWVtYmVyID0+IHtcbiAgICBpZiAoIXRzLmlzUHJvcGVydHlTaWduYXR1cmUobWVtYmVyKSB8fCBtZW1iZXIudHlwZSA9PT0gdW5kZWZpbmVkIHx8IG1lbWJlci5uYW1lID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgIXRzLmlzU3RyaW5nTGl0ZXJhbChtZW1iZXIubmFtZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgdmFsdWUgPSByZWFkU3RyaW5nVHlwZShtZW1iZXIudHlwZSk7XG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgb2JqW21lbWJlci5uYW1lLnRleHRdID0gdmFsdWU7XG4gIH0pO1xuICByZXR1cm4gb2JqO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVhZFN0cmluZ0FycmF5VHlwZSh0eXBlOiB0cy5UeXBlTm9kZSk6IHN0cmluZ1tdIHtcbiAgaWYgKCF0cy5pc1R1cGxlVHlwZU5vZGUodHlwZSkpIHtcbiAgICByZXR1cm4gW107XG4gIH1cbiAgY29uc3QgcmVzOiBzdHJpbmdbXSA9IFtdO1xuICB0eXBlLmVsZW1lbnRUeXBlcy5mb3JFYWNoKGVsID0+IHtcbiAgICBpZiAoIXRzLmlzTGl0ZXJhbFR5cGVOb2RlKGVsKSB8fCAhdHMuaXNTdHJpbmdMaXRlcmFsKGVsLmxpdGVyYWwpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHJlcy5wdXNoKGVsLmxpdGVyYWwudGV4dCk7XG4gIH0pO1xuICByZXR1cm4gcmVzO1xufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiBleHRyYWN0RGlyZWN0aXZlR3VhcmRzKG5vZGU6IENsYXNzRGVjbGFyYXRpb24sIHJlZmxlY3RvcjogUmVmbGVjdGlvbkhvc3QpOiB7XG4gIG5nVGVtcGxhdGVHdWFyZHM6IHN0cmluZ1tdLFxuICBoYXNOZ1RlbXBsYXRlQ29udGV4dEd1YXJkOiBib29sZWFuLFxufSB7XG4gIGNvbnN0IG1ldGhvZHMgPSBub2RlU3RhdGljTWV0aG9kTmFtZXMobm9kZSwgcmVmbGVjdG9yKTtcbiAgY29uc3QgbmdUZW1wbGF0ZUd1YXJkcyA9IG1ldGhvZHMuZmlsdGVyKG1ldGhvZCA9PiBtZXRob2Quc3RhcnRzV2l0aCgnbmdUZW1wbGF0ZUd1YXJkXycpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAobWV0aG9kID0+IG1ldGhvZC5zcGxpdCgnXycsIDIpWzFdKTtcbiAgY29uc3QgaGFzTmdUZW1wbGF0ZUNvbnRleHRHdWFyZCA9IG1ldGhvZHMuc29tZShuYW1lID0+IG5hbWUgPT09ICduZ1RlbXBsYXRlQ29udGV4dEd1YXJkJyk7XG4gIHJldHVybiB7aGFzTmdUZW1wbGF0ZUNvbnRleHRHdWFyZCwgbmdUZW1wbGF0ZUd1YXJkc307XG59XG5cbmZ1bmN0aW9uIG5vZGVTdGF0aWNNZXRob2ROYW1lcyhub2RlOiBDbGFzc0RlY2xhcmF0aW9uLCByZWZsZWN0b3I6IFJlZmxlY3Rpb25Ib3N0KTogc3RyaW5nW10ge1xuICByZXR1cm4gcmVmbGVjdG9yLmdldE1lbWJlcnNPZkNsYXNzKG5vZGUpXG4gICAgICAuZmlsdGVyKG1lbWJlciA9PiBtZW1iZXIua2luZCA9PT0gQ2xhc3NNZW1iZXJLaW5kLk1ldGhvZCAmJiBtZW1iZXIuaXNTdGF0aWMpXG4gICAgICAubWFwKG1lbWJlciA9PiBtZW1iZXIubmFtZSk7XG59XG5cbi8qKlxuICogQSBgTWV0YWRhdGFSZWFkZXJgIHRoYXQgcmVhZHMgZnJvbSBhbiBvcmRlcmVkIHNldCBvZiBjaGlsZCByZWFkZXJzIHVudGlsIGl0IG9idGFpbnMgdGhlIHJlcXVlc3RlZFxuICogbWV0YWRhdGEuXG4gKlxuICogVGhpcyBpcyB1c2VkIHRvIGNvbWJpbmUgYE1ldGFkYXRhUmVhZGVyYHMgdGhhdCByZWFkIGZyb20gZGlmZmVyZW50IHNvdXJjZXMgKGUuZy4gZnJvbSBhIHJlZ2lzdHJ5XG4gKiBhbmQgZnJvbSAuZC50cyBmaWxlcykuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb21wb3VuZE1ldGFkYXRhUmVhZGVyIGltcGxlbWVudHMgTWV0YWRhdGFSZWFkZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRlcnM6IE1ldGFkYXRhUmVhZGVyW10pIHt9XG5cbiAgZ2V0RGlyZWN0aXZlTWV0YWRhdGEobm9kZTogUmVmZXJlbmNlPENsYXNzRGVjbGFyYXRpb248dHMuRGVjbGFyYXRpb24+Pik6IERpcmVjdGl2ZU1ldGF8bnVsbCB7XG4gICAgZm9yIChjb25zdCByZWFkZXIgb2YgdGhpcy5yZWFkZXJzKSB7XG4gICAgICBjb25zdCBtZXRhID0gcmVhZGVyLmdldERpcmVjdGl2ZU1ldGFkYXRhKG5vZGUpO1xuICAgICAgaWYgKG1ldGEgIT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG1ldGE7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgZ2V0TmdNb2R1bGVNZXRhZGF0YShub2RlOiBSZWZlcmVuY2U8Q2xhc3NEZWNsYXJhdGlvbjx0cy5EZWNsYXJhdGlvbj4+KTogTmdNb2R1bGVNZXRhfG51bGwge1xuICAgIGZvciAoY29uc3QgcmVhZGVyIG9mIHRoaXMucmVhZGVycykge1xuICAgICAgY29uc3QgbWV0YSA9IHJlYWRlci5nZXROZ01vZHVsZU1ldGFkYXRhKG5vZGUpO1xuICAgICAgaWYgKG1ldGEgIT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG1ldGE7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGdldFBpcGVNZXRhZGF0YShub2RlOiBSZWZlcmVuY2U8Q2xhc3NEZWNsYXJhdGlvbjx0cy5EZWNsYXJhdGlvbj4+KTogUGlwZU1ldGF8bnVsbCB7XG4gICAgZm9yIChjb25zdCByZWFkZXIgb2YgdGhpcy5yZWFkZXJzKSB7XG4gICAgICBjb25zdCBtZXRhID0gcmVhZGVyLmdldFBpcGVNZXRhZGF0YShub2RlKTtcbiAgICAgIGlmIChtZXRhICE9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBtZXRhO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvbWV0YWRhdGEvc3JjL3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7O0lBRUgsK0JBQWlDO0lBRWpDLG1FQUF3QztJQUN4Qyx5RUFBeUo7SUFDekosa0ZBQXdEO0lBSXhELFNBQWdCLHlCQUF5QixDQUNyQyxPQUF1QixFQUFFLEdBQWdCLEVBQUUsb0JBQW1DLEVBQzlFLGlCQUF5QjtRQUMzQixJQUFJLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM1QixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsT0FBTyxHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxVQUFBLE9BQU87WUFDakMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTJCLDBCQUFhLENBQUMsT0FBTyxDQUFHLENBQUMsQ0FBQzthQUN0RTtZQUNELElBQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDeEIsSUFBQSwrREFBNEQsRUFBM0QsY0FBSSxFQUFFLGNBQXFELENBQUM7WUFDbkUsSUFBSSxDQUFDLG9DQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFvQywwQkFBYSxDQUFDLElBQUksQ0FBRyxDQUFDLENBQUM7YUFDNUU7WUFDRCxJQUFNLFNBQVMsR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUM7WUFDekYsSUFBSSxT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QUksQ0FBQztxQkFDYjtpQkFDRjs7Ozs7Ozs7O1lBQ0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0gsNkJBQUM7SUFBRCxDQUFDLEFBL0JELElBK0JDO0lBL0JZLHdEQUFzQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7UmVmZXJlbmNlfSBmcm9tICcuLi8uLi9pbXBvcnRzJztcbmltcG9ydCB7Q2xhc3NEZWNsYXJhdGlvbiwgQ2xhc3NNZW1iZXIsIENsYXNzTWVtYmVyS2luZCwgUmVmbGVjdGlvbkhvc3QsIGlzTmFtZWRDbGFzc0RlY2xhcmF0aW9uLCByZWZsZWN0VHlwZUVudGl0eVRvRGVjbGFyYXRpb259IGZyb20gJy4uLy4uL3JlZmxlY3Rpb24nO1xuaW1wb3J0IHtub2RlRGVidWdJbmZvfSBmcm9tICcuLi8uLi91dGlsL3NyYy90eXBlc2NyaXB0JztcblxuaW1wb3J0IHtEaXJlY3RpdmVNZXRhLCBNZXRhZGF0YVJlYWRlciwgTmdNb2R1bGVNZXRhLCBQaXBlTWV0YSwgVGVtcGxhdGVHdWFyZE1ldGF9IGZyb20gJy4vYXBpJztcblxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RSZWZlcmVuY2VzRnJvbVR5cGUoXG4gICAgY2hlY2tlcjogdHMuVHlwZUNoZWNrZXIsIGRlZjogdHMuVHlwZU5vZGUsIG5nTW9kdWxlSW1wb3J0ZWRGcm9tOiBzdHJpbmcgfCBudWxsLFxuICAgIHJlc29sdXRpb25Db250ZXh0OiBzdHJpbmcpOiBSZWZlcmVuY2U8Q2xhc3NEZWNsYXJhdGlvbj5bXSB7XG4gIGlmICghdHMuaXNUdXBsZVR5cGVOb2RlKGRlZikpIHtcbiAgICByZXR1cm4gW107XG4gIH1cbiAgcmV0dXJuIGRlZi5lbGVtZW50VHlwZXMubWFwKGVsZW1lbnQgPT4ge1xuICAgIGlmICghdHMuaXNUeXBlUXVlcnlOb2RlKGVsZW1lbnQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkIFR5cGVRdWVyeU5vZGU6ICR7bm9kZURlYnVnSW5mbyhlbGVtZW50KX1gKTtcbiAgICB9XG4gICAgY29uc3QgdHlwZSA9IGVsZW1lbnQuZXhwck5hbWU7XG4gICAgY29uc3Qge25vZGUsIGZyb219ID0gcmVmbGVjdFR5cGVFbnRpdHlUb0RlY2xhcmF0aW9uKHR5cGUsIGNoZWNrZXIpO1xuICAgIGlmICghaXNOYW1lZENsYXNzRGVjbGFyYXRpb24obm9kZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgbmFtZWQgQ2xhc3NEZWNsYXJhdGlvbjogJHtub2RlRGVidWdJbmZvKG5vZGUpfWApO1xuICAgIH1cbiAgICBjb25zdCBzcGVjaWZpZXIgPSAoZnJvbSAhPT0gbnVsbCAmJiAhZnJvbS5zdGFydHNXaXRoKCcuJykgPyBmcm9tIDogbmdNb2R1bGVJbXBvcnRlZEZyb20pO1xuICAgIGlmIChzcGVjaWZpZXIgIT09IG51bGwpIHtcbiAgICAgIHJldHVybiBuZXcgUmVmZXJlbmNlKG5vZGUsIHtzcGVjaWZpZXIsIHJlc29sdXRpb25Db250ZXh0fSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBuZXcgUmVmZXJlbmNlKG5vZGUpO1xuICAgIH1cbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkU3RyaW5nVHlwZSh0eXBlOiB0cy5UeXBlTm9kZSk6IHN0cmluZ3xudWxsIHtcbiAgaWYgKCF0cy5pc0xpdGVyYWxUeXBlTm9kZSh0eXBlKSB8fCAhdHMuaXNTdHJpbmdMaXRlcmFsKHR5cGUubGl0ZXJhbCkpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICByZXR1cm4gdHlwZS5saXRlcmFsLnRleHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkU3RyaW5nTWFwVHlwZSh0eXBlOiB0cy5UeXBlTm9kZSk6IHtba2V5OiBzdHJpbmddOiBzdHJpbmd9IHtcbiAgaWYgKCF0cy5pc1R5cGVMaXRlcmFsTm9kZSh0eXBlKSkge1xuICAgIHJldHVybiB7fTtcbiAgfVxuICBjb25zdCBvYmo6IHtba2V5OiBzdHJpbmddOiBzdHJpbmd9ID0ge307XG4gIHR5cGUubWVtYmVycy5mb3JFYWNoKG1lbWJlciA9PiB7XG4gICAgaWYgKCF0cy5pc1Byb3BlcnR5U2lnbmF0dXJlKG1lbWJlcikgfHwgbWVtYmVyLnR5cGUgPT09IHVuZGVmaW5lZCB8fCBtZW1iZXIubmFtZSA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICF0cy5pc1N0cmluZ0xpdGVyYWwobWVtYmVyLm5hbWUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHZhbHVlID0gcmVhZFN0cmluZ1R5cGUobWVtYmVyLnR5cGUpO1xuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIG9ialttZW1iZXIubmFtZS50ZXh0XSA9IHZhbHVlO1xuICB9KTtcbiAgcmV0dXJuIG9iajtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRTdHJpbmdBcnJheVR5cGUodHlwZTogdHMuVHlwZU5vZGUpOiBzdHJpbmdbXSB7XG4gIGlmICghdHMuaXNUdXBsZVR5cGVOb2RlKHR5cGUpKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG4gIGNvbnN0IHJlczogc3RyaW5nW10gPSBbXTtcbiAgdHlwZS5lbGVtZW50VHlwZXMuZm9yRWFjaChlbCA9PiB7XG4gICAgaWYgKCF0cy5pc0xpdGVyYWxUeXBlTm9kZShlbCkgfHwgIXRzLmlzU3RyaW5nTGl0ZXJhbChlbC5saXRlcmFsKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICByZXMucHVzaChlbC5saXRlcmFsLnRleHQpO1xuICB9KTtcbiAgcmV0dXJuIHJlcztcbn1cblxuXG5leHBvcnQgZnVuY3Rpb24gZXh0cmFjdERpcmVjdGl2ZUd1YXJkcyhub2RlOiBDbGFzc0RlY2xhcmF0aW9uLCByZWZsZWN0b3I6IFJlZmxlY3Rpb25Ib3N0KToge1xuICBuZ1RlbXBsYXRlR3VhcmRzOiBUZW1wbGF0ZUd1YXJkTWV0YVtdLFxuICBoYXNOZ1RlbXBsYXRlQ29udGV4dEd1YXJkOiBib29sZWFuLFxufSB7XG4gIGNvbnN0IHN0YXRpY01lbWJlcnMgPSByZWZsZWN0b3IuZ2V0TWVtYmVyc09mQ2xhc3Mobm9kZSkuZmlsdGVyKG1lbWJlciA9PiBtZW1iZXIuaXNTdGF0aWMpO1xuICBjb25zdCBuZ1RlbXBsYXRlR3VhcmRzID0gc3RhdGljTWVtYmVycy5tYXAoZXh0cmFjdFRlbXBsYXRlR3VhcmQpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZpbHRlcigoZ3VhcmQpOiBndWFyZCBpcyBUZW1wbGF0ZUd1YXJkTWV0YSA9PiBndWFyZCAhPT0gbnVsbCk7XG4gIGNvbnN0IGhhc05nVGVtcGxhdGVDb250ZXh0R3VhcmQgPSBzdGF0aWNNZW1iZXJzLnNvbWUoXG4gICAgICBtZW1iZXIgPT4gbWVtYmVyLmtpbmQgPT09IENsYXNzTWVtYmVyS2luZC5NZXRob2QgJiYgbWVtYmVyLm5hbWUgPT09ICduZ1RlbXBsYXRlQ29udGV4dEd1YXJkJyk7XG4gIHJldHVybiB7aGFzTmdUZW1wbGF0ZUNvbnRleHRHdWFyZCwgbmdUZW1wbGF0ZUd1YXJkc307XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RUZW1wbGF0ZUd1YXJkKG1lbWJlcjogQ2xhc3NNZW1iZXIpOiBUZW1wbGF0ZUd1YXJkTWV0YXxudWxsIHtcbiAgaWYgKCFtZW1iZXIubmFtZS5zdGFydHNXaXRoKCduZ1RlbXBsYXRlR3VhcmRfJykpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBpbnB1dE5hbWUgPSBtZW1iZXIubmFtZS5zcGxpdCgnXycsIDIpWzFdO1xuICBpZiAobWVtYmVyLmtpbmQgPT09IENsYXNzTWVtYmVyS2luZC5Qcm9wZXJ0eSkge1xuICAgIGxldCB0eXBlOiBzdHJpbmd8bnVsbCA9IG51bGw7XG4gICAgaWYgKG1lbWJlci50eXBlICE9PSBudWxsICYmIHRzLmlzTGl0ZXJhbFR5cGVOb2RlKG1lbWJlci50eXBlKSAmJlxuICAgICAgICB0cy5pc1N0cmluZ0xpdGVyYWwobWVtYmVyLnR5cGUubGl0ZXJhbCkpIHtcbiAgICAgIHR5cGUgPSBtZW1iZXIudHlwZS5saXRlcmFsLnRleHQ7XG4gICAgfVxuXG4gICAgLy8gT25seSBwcm9wZXJ0eSBtZW1iZXJzIHdpdGggc3RyaW5nIGxpdGVyYWwgdHlwZSAnYmluZGluZycgYXJlIGNvbnNpZGVyZWQgYXMgdGVtcGxhdGUgZ3VhcmQuXG4gICAgaWYgKHR5cGUgIT09ICdiaW5kaW5nJykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiB7aW5wdXROYW1lLCB0eXBlfTtcbiAgfSBlbHNlIGlmIChtZW1iZXIua2luZCA9PT0gQ2xhc3NNZW1iZXJLaW5kLk1ldGhvZCkge1xuICAgIHJldHVybiB7aW5wdXROYW1lLCB0eXBlOiAnaW52b2NhdGlvbid9O1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG5cbi8qKlxuICogQSBgTWV0YWRhdGFSZWFkZXJgIHRoYXQgcmVhZHMgZnJvbSBhbiBvcmRlcmVkIHNldCBvZiBjaGlsZCByZWFkZXJzIHVudGlsIGl0IG9idGFpbnMgdGhlIHJlcXVlc3RlZFxuICogbWV0YWRhdGEuXG4gKlxuICogVGhpcyBpcyB1c2VkIHRvIGNvbWJpbmUgYE1ldGFkYXRhUmVhZGVyYHMgdGhhdCByZWFkIGZyb20gZGlmZmVyZW50IHNvdXJjZXMgKGUuZy4gZnJvbSBhIHJlZ2lzdHJ5XG4gKiBhbmQgZnJvbSAuZC50cyBmaWxlcykuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb21wb3VuZE1ldGFkYXRhUmVhZGVyIGltcGxlbWVudHMgTWV0YWRhdGFSZWFkZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRlcnM6IE1ldGFkYXRhUmVhZGVyW10pIHt9XG5cbiAgZ2V0RGlyZWN0aXZlTWV0YWRhdGEobm9kZTogUmVmZXJlbmNlPENsYXNzRGVjbGFyYXRpb248dHMuRGVjbGFyYXRpb24+Pik6IERpcmVjdGl2ZU1ldGF8bnVsbCB7XG4gICAgZm9yIChjb25zdCByZWFkZXIgb2YgdGhpcy5yZWFkZXJzKSB7XG4gICAgICBjb25zdCBtZXRhID0gcmVhZGVyLmdldERpcmVjdGl2ZU1ldGFkYXRhKG5vZGUpO1xuICAgICAgaWYgKG1ldGEgIT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG1ldGE7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgZ2V0TmdNb2R1bGVNZXRhZGF0YShub2RlOiBSZWZlcmVuY2U8Q2xhc3NEZWNsYXJhdGlvbjx0cy5EZWNsYXJhdGlvbj4+KTogTmdNb2R1bGVNZXRhfG51bGwge1xuICAgIGZvciAoY29uc3QgcmVhZGVyIG9mIHRoaXMucmVhZGVycykge1xuICAgICAgY29uc3QgbWV0YSA9IHJlYWRlci5nZXROZ01vZHVsZU1ldGFkYXRhKG5vZGUpO1xuICAgICAgaWYgKG1ldGEgIT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG1ldGE7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGdldFBpcGVNZXRhZGF0YShub2RlOiBSZWZlcmVuY2U8Q2xhc3NEZWNsYXJhdGlvbjx0cy5EZWNsYXJhdGlvbj4+KTogUGlwZU1ldGF8bnVsbCB7XG4gICAgZm9yIChjb25zdCByZWFkZXIgb2YgdGhpcy5yZWFkZXJzKSB7XG4gICAgICBjb25zdCBtZXRhID0gcmVhZGVyLmdldFBpcGVNZXRhZGF0YShub2RlKTtcbiAgICAgIGlmIChtZXRhICE9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBtZXRhO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19
@@ -7,5 +7,5 @@
7
7
  */
8
8
  /// <amd-module name="@angular/compiler-cli/src/ngtsc/partial_evaluator" />
9
9
  export { DynamicValue } from './src/dynamic';
10
- export { ForeignFunctionResolver, PartialEvaluator } from './src/interface';
10
+ export { DependencyTracker, ForeignFunctionResolver, PartialEvaluator } from './src/interface';
11
11
  export { BuiltinFn, EnumValue, ResolvedValue, ResolvedValueArray, ResolvedValueMap } from './src/result';
@@ -24,4 +24,4 @@
24
24
  exports.BuiltinFn = result_1.BuiltinFn;
25
25
  exports.EnumValue = result_1.EnumValue;
26
26
  });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL3BhcnRpYWxfZXZhbHVhdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBRUgseUZBQTJDO0lBQW5DLGlDQUFBLFlBQVksQ0FBQTtJQUNwQiw2RkFBMEU7SUFBekMsdUNBQUEsZ0JBQWdCLENBQUE7SUFDakQsdUZBQXVHO0lBQS9GLDZCQUFBLFNBQVMsQ0FBQTtJQUFFLDZCQUFBLFNBQVMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuZXhwb3J0IHtEeW5hbWljVmFsdWV9IGZyb20gJy4vc3JjL2R5bmFtaWMnO1xuZXhwb3J0IHtGb3JlaWduRnVuY3Rpb25SZXNvbHZlciwgUGFydGlhbEV2YWx1YXRvcn0gZnJvbSAnLi9zcmMvaW50ZXJmYWNlJztcbmV4cG9ydCB7QnVpbHRpbkZuLCBFbnVtVmFsdWUsIFJlc29sdmVkVmFsdWUsIFJlc29sdmVkVmFsdWVBcnJheSwgUmVzb2x2ZWRWYWx1ZU1hcH0gZnJvbSAnLi9zcmMvcmVzdWx0JztcbiJdfQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL3BhcnRpYWxfZXZhbHVhdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBRUgseUZBQTJDO0lBQW5DLGlDQUFBLFlBQVksQ0FBQTtJQUNwQiw2RkFBNkY7SUFBekMsdUNBQUEsZ0JBQWdCLENBQUE7SUFDcEUsdUZBQXVHO0lBQS9GLDZCQUFBLFNBQVMsQ0FBQTtJQUFFLDZCQUFBLFNBQVMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuZXhwb3J0IHtEeW5hbWljVmFsdWV9IGZyb20gJy4vc3JjL2R5bmFtaWMnO1xuZXhwb3J0IHtEZXBlbmRlbmN5VHJhY2tlciwgRm9yZWlnbkZ1bmN0aW9uUmVzb2x2ZXIsIFBhcnRpYWxFdmFsdWF0b3J9IGZyb20gJy4vc3JjL2ludGVyZmFjZSc7XG5leHBvcnQge0J1aWx0aW5GbiwgRW51bVZhbHVlLCBSZXNvbHZlZFZhbHVlLCBSZXNvbHZlZFZhbHVlQXJyYXksIFJlc29sdmVkVmFsdWVNYXB9IGZyb20gJy4vc3JjL3Jlc3VsdCc7XG4iXX0=
@@ -28,7 +28,8 @@ export declare const enum DynamicValueReason {
28
28
  DYNAMIC_STRING = 1,
29
29
  /**
30
30
  * An external reference could not be resolved to a value which can be evaluated.
31
- * (E.g. a call expression for a function declared in `.d.ts`.)
31
+ * For example a call expression for a function declared in `.d.ts`, or accessing native globals
32
+ * such as `window`.
32
33
  */
33
34
  EXTERNAL_REFERENCE = 2,
34
35
  /**
@@ -71,4 +71,4 @@
71
71
  }());
72
72
  exports.DynamicValue = DynamicValue;
73
73
  });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvcGFydGlhbF9ldmFsdWF0b3Ivc3JjL2R5bmFtaWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7SUF1REg7O09BRUc7SUFDSDtRQUNFLHNCQUNhLElBQWEsRUFBVyxNQUFTLEVBQVUsSUFBd0I7WUFBbkUsU0FBSSxHQUFKLElBQUksQ0FBUztZQUFXLFdBQU0sR0FBTixNQUFNLENBQUc7WUFBVSxTQUFJLEdBQUosSUFBSSxDQUFvQjtRQUFHLENBQUM7UUFFN0UsNkJBQWdCLEdBQXZCLFVBQXdCLElBQWEsRUFBRSxLQUFtQjtZQUN4RCxPQUFPLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxLQUFLLHdCQUFtQyxDQUFDO1FBQ3pFLENBQUM7UUFFTSw4QkFBaUIsR0FBeEIsVUFBeUIsSUFBYTtZQUNwQyxPQUFPLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxTQUFTLHlCQUFvQyxDQUFDO1FBQzlFLENBQUM7UUFFTSxrQ0FBcUIsR0FBNUIsVUFBNkIsSUFBYSxFQUFFLEdBQThCO1lBRXhFLE9BQU8sSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLEdBQUcsNkJBQXdDLENBQUM7UUFDNUUsQ0FBQztRQUVNLHNDQUF5QixHQUFoQyxVQUFpQyxJQUFhO1lBQzVDLE9BQU8sSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLFNBQVMsa0NBQTZDLENBQUM7UUFDdkYsQ0FBQztRQUVNLGtDQUFxQixHQUE1QixVQUE2QixJQUFtQjtZQUM5QyxPQUFPLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxTQUFTLDZCQUF3QyxDQUFDO1FBQ2xGLENBQUM7UUFFTSxzQ0FBeUIsR0FBaEMsVUFBaUMsSUFBYSxFQUFFLEtBQWM7WUFDNUQsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxrQ0FBNkMsQ0FBQztRQUNuRixDQUFDO1FBRU0sd0JBQVcsR0FBbEIsVUFBbUIsSUFBYTtZQUM5QixPQUFPLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxTQUFTLGtCQUE2QixDQUFDO1FBQ3ZFLENBQUM7UUFFRCx5Q0FBa0IsR0FBbEI7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLDBCQUFxQyxDQUFDO1FBQ3hELENBQUM7UUFFRCwwQ0FBbUIsR0FBbkI7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLDJCQUFzQyxDQUFDO1FBQ3pELENBQUM7UUFFRCw4Q0FBdUIsR0FBdkI7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLCtCQUEwQyxDQUFDO1FBQzdELENBQUM7UUFFRCxrREFBMkIsR0FBM0I7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLG9DQUErQyxDQUFDO1FBQ2xFLENBQUM7UUFFRCw4Q0FBdUIsR0FBdkI7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLCtCQUEwQyxDQUFDO1FBQzdELENBQUM7UUFFRCxrREFBMkIsR0FBM0I7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLG9DQUErQyxDQUFDO1FBQ2xFLENBQUM7UUFFRCxvQ0FBYSxHQUFiO1lBQ0UsT0FBTyxJQUFJLENBQUMsSUFBSSxvQkFBK0IsQ0FBQztRQUNsRCxDQUFDO1FBQ0gsbUJBQUM7SUFBRCxDQUFDLEFBNURELElBNERDO0lBNURZLG9DQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtSZWZlcmVuY2V9IGZyb20gJy4uLy4uL2ltcG9ydHMnO1xuXG4vKipcbiAqIFRoZSByZWFzb24gd2h5IGEgdmFsdWUgY2Fubm90IGJlIGRldGVybWluZWQgc3RhdGljYWxseS5cbiAqL1xuZXhwb3J0IGNvbnN0IGVudW0gRHluYW1pY1ZhbHVlUmVhc29uIHtcbiAgLyoqXG4gICAqIEEgdmFsdWUgY291bGQgbm90IGJlIGRldGVybWluZWQgc3RhdGljYWxseSwgYmVjYXVzZSBpdCBjb250YWlucyBhIHRlcm0gdGhhdCBjb3VsZCBub3QgYmVcbiAgICogZGV0ZXJtaW5lZCBzdGF0aWNhbGx5LlxuICAgKiAoRS5nLiBhIHByb3BlcnR5IGFzc2lnbm1lbnQgb3IgY2FsbCBleHByZXNzaW9uIHdoZXJlIHRoZSBsaHMgaXMgYSBgRHluYW1pY1ZhbHVlYCwgYSB0ZW1wbGF0ZVxuICAgKiBsaXRlcmFsIHdpdGggYSBkeW5hbWljIGV4cHJlc3Npb24sIGFuIG9iamVjdCBsaXRlcmFsIHdpdGggYSBzcHJlYWQgYXNzaWdubWVudCB3aGljaCBjb3VsZCBub3RcbiAgICogYmUgZGV0ZXJtaW5lZCBzdGF0aWNhbGx5LCBldGMuKVxuICAgKi9cbiAgRFlOQU1JQ19JTlBVVCxcblxuICAvKipcbiAgICogQSBzdHJpbmcgY291bGQgbm90IGJlIHN0YXRpY2FsbHkgZXZhbHVhdGVkLlxuICAgKiAoRS5nLiBhIGR5bmFtaWNhbGx5IGNvbnN0cnVjdGVkIG9iamVjdCBwcm9wZXJ0eSBuYW1lIG9yIGEgdGVtcGxhdGUgbGl0ZXJhbCBleHByZXNzaW9uIHRoYXRcbiAgICogY291bGQgbm90IGJlIHN0YXRpY2FsbHkgcmVzb2x2ZWQgdG8gYSBwcmltaXRpdmUgdmFsdWUuKVxuICAgKi9cbiAgRFlOQU1JQ19TVFJJTkcsXG5cbiAgLyoqXG4gICAqIEFuIGV4dGVybmFsIHJlZmVyZW5jZSBjb3VsZCBub3QgYmUgcmVzb2x2ZWQgdG8gYSB2YWx1ZSB3aGljaCBjYW4gYmUgZXZhbHVhdGVkLlxuICAgKiAoRS5nLiBhIGNhbGwgZXhwcmVzc2lvbiBmb3IgYSBmdW5jdGlvbiBkZWNsYXJlZCBpbiBgLmQudHNgLilcbiAgICovXG4gIEVYVEVSTkFMX1JFRkVSRU5DRSxcblxuICAvKipcbiAgICogQSB0eXBlIG9mIGB0cy5FeHByZXNzaW9uYCB0aGF0IGBTdGF0aWNJbnRlcnByZXRlcmAgZG9lc24ndCBrbm93IGhvdyB0byBldmFsdWF0ZS5cbiAgICovXG4gIFVOS05PV05fRVhQUkVTU0lPTl9UWVBFLFxuXG4gIC8qKlxuICAgKiBBIGRlY2xhcmF0aW9uIG9mIGEgYHRzLklkZW50aWZpZXJgIGNvdWxkIG5vdCBiZSBmb3VuZC5cbiAgICovXG4gIFVOS05PV05fSURFTlRJRklFUixcblxuICAvKipcbiAgICogQSB2YWx1ZSBjb3VsZCBiZSByZXNvbHZlZCwgYnV0IGlzIG5vdCBhbiBhY2NlcHRhYmxlIHR5cGUgZm9yIHRoZSBvcGVyYXRpb24gYmVpbmcgcGVyZm9ybWVkLlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgYXR0ZW1wdGluZyB0byBjYWxsIGEgbm9uLWNhbGxhYmxlIGV4cHJlc3Npb24uXG4gICAqL1xuICBJTlZBTElEX0VYUFJFU1NJT05fVFlQRSxcblxuICAvKipcbiAgICogQSB2YWx1ZSBjb3VsZCBub3QgYmUgZGV0ZXJtaW5lZCBzdGF0aWNhbGx5IGZvciBhbnkgcmVhc29uIG90aGVyIHRoZSBhYm92ZS5cbiAgICovXG4gIFVOS05PV04sXG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHZhbHVlIHdoaWNoIGNhbm5vdCBiZSBkZXRlcm1pbmVkIHN0YXRpY2FsbHkuXG4gKi9cbmV4cG9ydCBjbGFzcyBEeW5hbWljVmFsdWU8UiA9IHVua25vd24+IHtcbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihcbiAgICAgIHJlYWRvbmx5IG5vZGU6IHRzLk5vZGUsIHJlYWRvbmx5IHJlYXNvbjogUiwgcHJpdmF0ZSBjb2RlOiBEeW5hbWljVmFsdWVSZWFzb24pIHt9XG5cbiAgc3RhdGljIGZyb21EeW5hbWljSW5wdXQobm9kZTogdHMuTm9kZSwgaW5wdXQ6IER5bmFtaWNWYWx1ZSk6IER5bmFtaWNWYWx1ZTxEeW5hbWljVmFsdWU+IHtcbiAgICByZXR1cm4gbmV3IER5bmFtaWNWYWx1ZShub2RlLCBpbnB1dCwgRHluYW1pY1ZhbHVlUmVhc29uLkRZTkFNSUNfSU5QVVQpO1xuICB9XG5cbiAgc3RhdGljIGZyb21EeW5hbWljU3RyaW5nKG5vZGU6IHRzLk5vZGUpOiBEeW5hbWljVmFsdWUge1xuICAgIHJldHVybiBuZXcgRHluYW1pY1ZhbHVlKG5vZGUsIHVuZGVmaW5lZCwgRHluYW1pY1ZhbHVlUmVhc29uLkRZTkFNSUNfU1RSSU5HKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tRXh0ZXJuYWxSZWZlcmVuY2Uobm9kZTogdHMuTm9kZSwgcmVmOiBSZWZlcmVuY2U8dHMuRGVjbGFyYXRpb24+KTpcbiAgICAgIER5bmFtaWNWYWx1ZTxSZWZlcmVuY2U8dHMuRGVjbGFyYXRpb24+PiB7XG4gICAgcmV0dXJuIG5ldyBEeW5hbWljVmFsdWUobm9kZSwgcmVmLCBEeW5hbWljVmFsdWVSZWFzb24uRVhURVJOQUxfUkVGRVJFTkNFKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVW5rbm93bkV4cHJlc3Npb25UeXBlKG5vZGU6IHRzLk5vZGUpOiBEeW5hbWljVmFsdWUge1xuICAgIHJldHVybiBuZXcgRHluYW1pY1ZhbHVlKG5vZGUsIHVuZGVmaW5lZCwgRHluYW1pY1ZhbHVlUmVhc29uLlVOS05PV05fRVhQUkVTU0lPTl9UWVBFKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVW5rbm93bklkZW50aWZpZXIobm9kZTogdHMuSWRlbnRpZmllcik6IER5bmFtaWNWYWx1ZSB7XG4gICAgcmV0dXJuIG5ldyBEeW5hbWljVmFsdWUobm9kZSwgdW5kZWZpbmVkLCBEeW5hbWljVmFsdWVSZWFzb24uVU5LTk9XTl9JREVOVElGSUVSKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSW52YWxpZEV4cHJlc3Npb25UeXBlKG5vZGU6IHRzLk5vZGUsIHZhbHVlOiB1bmtub3duKTogRHluYW1pY1ZhbHVlPHVua25vd24+IHtcbiAgICByZXR1cm4gbmV3IER5bmFtaWNWYWx1ZShub2RlLCB2YWx1ZSwgRHluYW1pY1ZhbHVlUmVhc29uLklOVkFMSURfRVhQUkVTU0lPTl9UWVBFKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVW5rbm93bihub2RlOiB0cy5Ob2RlKTogRHluYW1pY1ZhbHVlIHtcbiAgICByZXR1cm4gbmV3IER5bmFtaWNWYWx1ZShub2RlLCB1bmRlZmluZWQsIER5bmFtaWNWYWx1ZVJlYXNvbi5VTktOT1dOKTtcbiAgfVxuXG4gIGlzRnJvbUR5bmFtaWNJbnB1dCh0aGlzOiBEeW5hbWljVmFsdWU8Uj4pOiB0aGlzIGlzIER5bmFtaWNWYWx1ZTxEeW5hbWljVmFsdWU+IHtcbiAgICByZXR1cm4gdGhpcy5jb2RlID09PSBEeW5hbWljVmFsdWVSZWFzb24uRFlOQU1JQ19JTlBVVDtcbiAgfVxuXG4gIGlzRnJvbUR5bmFtaWNTdHJpbmcodGhpczogRHluYW1pY1ZhbHVlPFI+KTogdGhpcyBpcyBEeW5hbWljVmFsdWUge1xuICAgIHJldHVybiB0aGlzLmNvZGUgPT09IER5bmFtaWNWYWx1ZVJlYXNvbi5EWU5BTUlDX1NUUklORztcbiAgfVxuXG4gIGlzRnJvbUV4dGVybmFsUmVmZXJlbmNlKHRoaXM6IER5bmFtaWNWYWx1ZTxSPik6IHRoaXMgaXMgRHluYW1pY1ZhbHVlPFJlZmVyZW5jZTx0cy5EZWNsYXJhdGlvbj4+IHtcbiAgICByZXR1cm4gdGhpcy5jb2RlID09PSBEeW5hbWljVmFsdWVSZWFzb24uRVhURVJOQUxfUkVGRVJFTkNFO1xuICB9XG5cbiAgaXNGcm9tVW5rbm93bkV4cHJlc3Npb25UeXBlKHRoaXM6IER5bmFtaWNWYWx1ZTxSPik6IHRoaXMgaXMgRHluYW1pY1ZhbHVlIHtcbiAgICByZXR1cm4gdGhpcy5jb2RlID09PSBEeW5hbWljVmFsdWVSZWFzb24uVU5LTk9XTl9FWFBSRVNTSU9OX1RZUEU7XG4gIH1cblxuICBpc0Zyb21Vbmtub3duSWRlbnRpZmllcih0aGlzOiBEeW5hbWljVmFsdWU8Uj4pOiB0aGlzIGlzIER5bmFtaWNWYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMuY29kZSA9PT0gRHluYW1pY1ZhbHVlUmVhc29uLlVOS05PV05fSURFTlRJRklFUjtcbiAgfVxuXG4gIGlzRnJvbUludmFsaWRFeHByZXNzaW9uVHlwZSh0aGlzOiBEeW5hbWljVmFsdWU8Uj4pOiB0aGlzIGlzIER5bmFtaWNWYWx1ZTx1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMuY29kZSA9PT0gRHluYW1pY1ZhbHVlUmVhc29uLklOVkFMSURfRVhQUkVTU0lPTl9UWVBFO1xuICB9XG5cbiAgaXNGcm9tVW5rbm93bih0aGlzOiBEeW5hbWljVmFsdWU8Uj4pOiB0aGlzIGlzIER5bmFtaWNWYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMuY29kZSA9PT0gRHluYW1pY1ZhbHVlUmVhc29uLlVOS05PV047XG4gIH1cbn1cbiJdfQ==
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvcGFydGlhbF9ldmFsdWF0b3Ivc3JjL2R5bmFtaWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7SUF3REg7O09BRUc7SUFDSDtRQUNFLHNCQUNhLElBQWEsRUFBVyxNQUFTLEVBQVUsSUFBd0I7WUFBbkUsU0FBSSxHQUFKLElBQUksQ0FBUztZQUFXLFdBQU0sR0FBTixNQUFNLENBQUc7WUFBVSxTQUFJLEdBQUosSUFBSSxDQUFvQjtRQUFHLENBQUM7UUFFN0UsNkJBQWdCLEdBQXZCLFVBQXdCLElBQWEsRUFBRSxLQUFtQjtZQUN4RCxPQUFPLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxLQUFLLHdCQUFtQyxDQUFDO1FBQ3pFLENBQUM7UUFFTSw4QkFBaUIsR0FBeEIsVUFBeUIsSUFBYTtZQUNwQyxPQUFPLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxTQUFTLHlCQUFvQyxDQUFDO1FBQzlFLENBQUM7UUFFTSxrQ0FBcUIsR0FBNUIsVUFBNkIsSUFBYSxFQUFFLEdBQThCO1lBRXhFLE9BQU8sSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLEdBQUcsNkJBQXdDLENBQUM7UUFDNUUsQ0FBQztRQUVNLHNDQUF5QixHQUFoQyxVQUFpQyxJQUFhO1lBQzVDLE9BQU8sSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLFNBQVMsa0NBQTZDLENBQUM7UUFDdkYsQ0FBQztRQUVNLGtDQUFxQixHQUE1QixVQUE2QixJQUFtQjtZQUM5QyxPQUFPLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxTQUFTLDZCQUF3QyxDQUFDO1FBQ2xGLENBQUM7UUFFTSxzQ0FBeUIsR0FBaEMsVUFBaUMsSUFBYSxFQUFFLEtBQWM7WUFDNUQsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxrQ0FBNkMsQ0FBQztRQUNuRixDQUFDO1FBRU0sd0JBQVcsR0FBbEIsVUFBbUIsSUFBYTtZQUM5QixPQUFPLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxTQUFTLGtCQUE2QixDQUFDO1FBQ3ZFLENBQUM7UUFFRCx5Q0FBa0IsR0FBbEI7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLDBCQUFxQyxDQUFDO1FBQ3hELENBQUM7UUFFRCwwQ0FBbUIsR0FBbkI7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLDJCQUFzQyxDQUFDO1FBQ3pELENBQUM7UUFFRCw4Q0FBdUIsR0FBdkI7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLCtCQUEwQyxDQUFDO1FBQzdELENBQUM7UUFFRCxrREFBMkIsR0FBM0I7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLG9DQUErQyxDQUFDO1FBQ2xFLENBQUM7UUFFRCw4Q0FBdUIsR0FBdkI7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLCtCQUEwQyxDQUFDO1FBQzdELENBQUM7UUFFRCxrREFBMkIsR0FBM0I7WUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLG9DQUErQyxDQUFDO1FBQ2xFLENBQUM7UUFFRCxvQ0FBYSxHQUFiO1lBQ0UsT0FBTyxJQUFJLENBQUMsSUFBSSxvQkFBK0IsQ0FBQztRQUNsRCxDQUFDO1FBQ0gsbUJBQUM7SUFBRCxDQUFDLEFBNURELElBNERDO0lBNURZLG9DQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtSZWZlcmVuY2V9IGZyb20gJy4uLy4uL2ltcG9ydHMnO1xuXG4vKipcbiAqIFRoZSByZWFzb24gd2h5IGEgdmFsdWUgY2Fubm90IGJlIGRldGVybWluZWQgc3RhdGljYWxseS5cbiAqL1xuZXhwb3J0IGNvbnN0IGVudW0gRHluYW1pY1ZhbHVlUmVhc29uIHtcbiAgLyoqXG4gICAqIEEgdmFsdWUgY291bGQgbm90IGJlIGRldGVybWluZWQgc3RhdGljYWxseSwgYmVjYXVzZSBpdCBjb250YWlucyBhIHRlcm0gdGhhdCBjb3VsZCBub3QgYmVcbiAgICogZGV0ZXJtaW5lZCBzdGF0aWNhbGx5LlxuICAgKiAoRS5nLiBhIHByb3BlcnR5IGFzc2lnbm1lbnQgb3IgY2FsbCBleHByZXNzaW9uIHdoZXJlIHRoZSBsaHMgaXMgYSBgRHluYW1pY1ZhbHVlYCwgYSB0ZW1wbGF0ZVxuICAgKiBsaXRlcmFsIHdpdGggYSBkeW5hbWljIGV4cHJlc3Npb24sIGFuIG9iamVjdCBsaXRlcmFsIHdpdGggYSBzcHJlYWQgYXNzaWdubWVudCB3aGljaCBjb3VsZCBub3RcbiAgICogYmUgZGV0ZXJtaW5lZCBzdGF0aWNhbGx5LCBldGMuKVxuICAgKi9cbiAgRFlOQU1JQ19JTlBVVCxcblxuICAvKipcbiAgICogQSBzdHJpbmcgY291bGQgbm90IGJlIHN0YXRpY2FsbHkgZXZhbHVhdGVkLlxuICAgKiAoRS5nLiBhIGR5bmFtaWNhbGx5IGNvbnN0cnVjdGVkIG9iamVjdCBwcm9wZXJ0eSBuYW1lIG9yIGEgdGVtcGxhdGUgbGl0ZXJhbCBleHByZXNzaW9uIHRoYXRcbiAgICogY291bGQgbm90IGJlIHN0YXRpY2FsbHkgcmVzb2x2ZWQgdG8gYSBwcmltaXRpdmUgdmFsdWUuKVxuICAgKi9cbiAgRFlOQU1JQ19TVFJJTkcsXG5cbiAgLyoqXG4gICAqIEFuIGV4dGVybmFsIHJlZmVyZW5jZSBjb3VsZCBub3QgYmUgcmVzb2x2ZWQgdG8gYSB2YWx1ZSB3aGljaCBjYW4gYmUgZXZhbHVhdGVkLlxuICAgKiBGb3IgZXhhbXBsZSBhIGNhbGwgZXhwcmVzc2lvbiBmb3IgYSBmdW5jdGlvbiBkZWNsYXJlZCBpbiBgLmQudHNgLCBvciBhY2Nlc3NpbmcgbmF0aXZlIGdsb2JhbHNcbiAgICogc3VjaCBhcyBgd2luZG93YC5cbiAgICovXG4gIEVYVEVSTkFMX1JFRkVSRU5DRSxcblxuICAvKipcbiAgICogQSB0eXBlIG9mIGB0cy5FeHByZXNzaW9uYCB0aGF0IGBTdGF0aWNJbnRlcnByZXRlcmAgZG9lc24ndCBrbm93IGhvdyB0byBldmFsdWF0ZS5cbiAgICovXG4gIFVOS05PV05fRVhQUkVTU0lPTl9UWVBFLFxuXG4gIC8qKlxuICAgKiBBIGRlY2xhcmF0aW9uIG9mIGEgYHRzLklkZW50aWZpZXJgIGNvdWxkIG5vdCBiZSBmb3VuZC5cbiAgICovXG4gIFVOS05PV05fSURFTlRJRklFUixcblxuICAvKipcbiAgICogQSB2YWx1ZSBjb3VsZCBiZSByZXNvbHZlZCwgYnV0IGlzIG5vdCBhbiBhY2NlcHRhYmxlIHR5cGUgZm9yIHRoZSBvcGVyYXRpb24gYmVpbmcgcGVyZm9ybWVkLlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgYXR0ZW1wdGluZyB0byBjYWxsIGEgbm9uLWNhbGxhYmxlIGV4cHJlc3Npb24uXG4gICAqL1xuICBJTlZBTElEX0VYUFJFU1NJT05fVFlQRSxcblxuICAvKipcbiAgICogQSB2YWx1ZSBjb3VsZCBub3QgYmUgZGV0ZXJtaW5lZCBzdGF0aWNhbGx5IGZvciBhbnkgcmVhc29uIG90aGVyIHRoZSBhYm92ZS5cbiAgICovXG4gIFVOS05PV04sXG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHZhbHVlIHdoaWNoIGNhbm5vdCBiZSBkZXRlcm1pbmVkIHN0YXRpY2FsbHkuXG4gKi9cbmV4cG9ydCBjbGFzcyBEeW5hbWljVmFsdWU8UiA9IHVua25vd24+IHtcbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihcbiAgICAgIHJlYWRvbmx5IG5vZGU6IHRzLk5vZGUsIHJlYWRvbmx5IHJlYXNvbjogUiwgcHJpdmF0ZSBjb2RlOiBEeW5hbWljVmFsdWVSZWFzb24pIHt9XG5cbiAgc3RhdGljIGZyb21EeW5hbWljSW5wdXQobm9kZTogdHMuTm9kZSwgaW5wdXQ6IER5bmFtaWNWYWx1ZSk6IER5bmFtaWNWYWx1ZTxEeW5hbWljVmFsdWU+IHtcbiAgICByZXR1cm4gbmV3IER5bmFtaWNWYWx1ZShub2RlLCBpbnB1dCwgRHluYW1pY1ZhbHVlUmVhc29uLkRZTkFNSUNfSU5QVVQpO1xuICB9XG5cbiAgc3RhdGljIGZyb21EeW5hbWljU3RyaW5nKG5vZGU6IHRzLk5vZGUpOiBEeW5hbWljVmFsdWUge1xuICAgIHJldHVybiBuZXcgRHluYW1pY1ZhbHVlKG5vZGUsIHVuZGVmaW5lZCwgRHluYW1pY1ZhbHVlUmVhc29uLkRZTkFNSUNfU1RSSU5HKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tRXh0ZXJuYWxSZWZlcmVuY2Uobm9kZTogdHMuTm9kZSwgcmVmOiBSZWZlcmVuY2U8dHMuRGVjbGFyYXRpb24+KTpcbiAgICAgIER5bmFtaWNWYWx1ZTxSZWZlcmVuY2U8dHMuRGVjbGFyYXRpb24+PiB7XG4gICAgcmV0dXJuIG5ldyBEeW5hbWljVmFsdWUobm9kZSwgcmVmLCBEeW5hbWljVmFsdWVSZWFzb24uRVhURVJOQUxfUkVGRVJFTkNFKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVW5rbm93bkV4cHJlc3Npb25UeXBlKG5vZGU6IHRzLk5vZGUpOiBEeW5hbWljVmFsdWUge1xuICAgIHJldHVybiBuZXcgRHluYW1pY1ZhbHVlKG5vZGUsIHVuZGVmaW5lZCwgRHluYW1pY1ZhbHVlUmVhc29uLlVOS05PV05fRVhQUkVTU0lPTl9UWVBFKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVW5rbm93bklkZW50aWZpZXIobm9kZTogdHMuSWRlbnRpZmllcik6IER5bmFtaWNWYWx1ZSB7XG4gICAgcmV0dXJuIG5ldyBEeW5hbWljVmFsdWUobm9kZSwgdW5kZWZpbmVkLCBEeW5hbWljVmFsdWVSZWFzb24uVU5LTk9XTl9JREVOVElGSUVSKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSW52YWxpZEV4cHJlc3Npb25UeXBlKG5vZGU6IHRzLk5vZGUsIHZhbHVlOiB1bmtub3duKTogRHluYW1pY1ZhbHVlPHVua25vd24+IHtcbiAgICByZXR1cm4gbmV3IER5bmFtaWNWYWx1ZShub2RlLCB2YWx1ZSwgRHluYW1pY1ZhbHVlUmVhc29uLklOVkFMSURfRVhQUkVTU0lPTl9UWVBFKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVW5rbm93bihub2RlOiB0cy5Ob2RlKTogRHluYW1pY1ZhbHVlIHtcbiAgICByZXR1cm4gbmV3IER5bmFtaWNWYWx1ZShub2RlLCB1bmRlZmluZWQsIER5bmFtaWNWYWx1ZVJlYXNvbi5VTktOT1dOKTtcbiAgfVxuXG4gIGlzRnJvbUR5bmFtaWNJbnB1dCh0aGlzOiBEeW5hbWljVmFsdWU8Uj4pOiB0aGlzIGlzIER5bmFtaWNWYWx1ZTxEeW5hbWljVmFsdWU+IHtcbiAgICByZXR1cm4gdGhpcy5jb2RlID09PSBEeW5hbWljVmFsdWVSZWFzb24uRFlOQU1JQ19JTlBVVDtcbiAgfVxuXG4gIGlzRnJvbUR5bmFtaWNTdHJpbmcodGhpczogRHluYW1pY1ZhbHVlPFI+KTogdGhpcyBpcyBEeW5hbWljVmFsdWUge1xuICAgIHJldHVybiB0aGlzLmNvZGUgPT09IER5bmFtaWNWYWx1ZVJlYXNvbi5EWU5BTUlDX1NUUklORztcbiAgfVxuXG4gIGlzRnJvbUV4dGVybmFsUmVmZXJlbmNlKHRoaXM6IER5bmFtaWNWYWx1ZTxSPik6IHRoaXMgaXMgRHluYW1pY1ZhbHVlPFJlZmVyZW5jZTx0cy5EZWNsYXJhdGlvbj4+IHtcbiAgICByZXR1cm4gdGhpcy5jb2RlID09PSBEeW5hbWljVmFsdWVSZWFzb24uRVhURVJOQUxfUkVGRVJFTkNFO1xuICB9XG5cbiAgaXNGcm9tVW5rbm93bkV4cHJlc3Npb25UeXBlKHRoaXM6IER5bmFtaWNWYWx1ZTxSPik6IHRoaXMgaXMgRHluYW1pY1ZhbHVlIHtcbiAgICByZXR1cm4gdGhpcy5jb2RlID09PSBEeW5hbWljVmFsdWVSZWFzb24uVU5LTk9XTl9FWFBSRVNTSU9OX1RZUEU7XG4gIH1cblxuICBpc0Zyb21Vbmtub3duSWRlbnRpZmllcih0aGlzOiBEeW5hbWljVmFsdWU8Uj4pOiB0aGlzIGlzIER5bmFtaWNWYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMuY29kZSA9PT0gRHluYW1pY1ZhbHVlUmVhc29uLlVOS05PV05fSURFTlRJRklFUjtcbiAgfVxuXG4gIGlzRnJvbUludmFsaWRFeHByZXNzaW9uVHlwZSh0aGlzOiBEeW5hbWljVmFsdWU8Uj4pOiB0aGlzIGlzIER5bmFtaWNWYWx1ZTx1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMuY29kZSA9PT0gRHluYW1pY1ZhbHVlUmVhc29uLklOVkFMSURfRVhQUkVTU0lPTl9UWVBFO1xuICB9XG5cbiAgaXNGcm9tVW5rbm93bih0aGlzOiBEeW5hbWljVmFsdWU8Uj4pOiB0aGlzIGlzIER5bmFtaWNWYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMuY29kZSA9PT0gRHluYW1pY1ZhbHVlUmVhc29uLlVOS05PV047XG4gIH1cbn1cbiJdfQ==
@@ -10,11 +10,18 @@ import * as ts from 'typescript';
10
10
  import { Reference } from '../../imports';
11
11
  import { ReflectionHost } from '../../reflection';
12
12
  import { ResolvedValue } from './result';
13
+ /**
14
+ * Implement this interface to record dependency relations between
15
+ * source files.
16
+ */
17
+ export interface DependencyTracker {
18
+ trackFileDependency(dep: ts.SourceFile, src: ts.SourceFile): void;
19
+ }
13
20
  export declare type ForeignFunctionResolver = (node: Reference<ts.FunctionDeclaration | ts.MethodDeclaration | ts.FunctionExpression>, args: ReadonlyArray<ts.Expression>) => ts.Expression | null;
14
- export declare type VisitedFilesCallback = (sf: ts.SourceFile) => void;
15
21
  export declare class PartialEvaluator {
16
22
  private host;
17
23
  private checker;
18
- constructor(host: ReflectionHost, checker: ts.TypeChecker);
19
- evaluate(expr: ts.Expression, foreignFunctionResolver?: ForeignFunctionResolver, visitedFilesCb?: VisitedFilesCallback): ResolvedValue;
24
+ private dependencyTracker?;
25
+ constructor(host: ReflectionHost, checker: ts.TypeChecker, dependencyTracker?: DependencyTracker | undefined);
26
+ evaluate(expr: ts.Expression, foreignFunctionResolver?: ForeignFunctionResolver): ResolvedValue;
20
27
  }
@@ -18,16 +18,15 @@
18
18
  Object.defineProperty(exports, "__esModule", { value: true });
19
19
  var interpreter_1 = require("@angular/compiler-cli/src/ngtsc/partial_evaluator/src/interpreter");
20
20
  var PartialEvaluator = /** @class */ (function () {
21
- function PartialEvaluator(host, checker) {
21
+ function PartialEvaluator(host, checker, dependencyTracker) {
22
22
  this.host = host;
23
23
  this.checker = checker;
24
+ this.dependencyTracker = dependencyTracker;
24
25
  }
25
- PartialEvaluator.prototype.evaluate = function (expr, foreignFunctionResolver, visitedFilesCb) {
26
- var interpreter = new interpreter_1.StaticInterpreter(this.host, this.checker, visitedFilesCb);
27
- if (visitedFilesCb) {
28
- visitedFilesCb(expr.getSourceFile());
29
- }
26
+ PartialEvaluator.prototype.evaluate = function (expr, foreignFunctionResolver) {
27
+ var interpreter = new interpreter_1.StaticInterpreter(this.host, this.checker, this.dependencyTracker);
30
28
  return interpreter.visit(expr, {
29
+ originatingFile: expr.getSourceFile(),
31
30
  absoluteModuleName: null,
32
31
  resolutionContext: expr.getSourceFile().fileName,
33
32
  scope: new Map(), foreignFunctionResolver: foreignFunctionResolver,
@@ -37,4 +36,4 @@
37
36
  }());
38
37
  exports.PartialEvaluator = PartialEvaluator;
39
38
  });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy9wYXJ0aWFsX2V2YWx1YXRvci9zcmMvaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBT0gsaUdBQWdEO0lBU2hEO1FBQ0UsMEJBQW9CLElBQW9CLEVBQVUsT0FBdUI7WUFBckQsU0FBSSxHQUFKLElBQUksQ0FBZ0I7WUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUFHLENBQUM7UUFFN0UsbUNBQVEsR0FBUixVQUNJLElBQW1CLEVBQUUsdUJBQWlELEVBQ3RFLGNBQXFDO1lBQ3ZDLElBQU0sV0FBVyxHQUFHLElBQUksK0JBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1lBQ25GLElBQUksY0FBYyxFQUFFO2dCQUNsQixjQUFjLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7YUFDdEM7WUFDRCxPQUFPLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFO2dCQUM3QixrQkFBa0IsRUFBRSxJQUFJO2dCQUN4QixpQkFBaUIsRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUTtnQkFDaEQsS0FBSyxFQUFFLElBQUksR0FBRyxFQUEwQyxFQUFFLHVCQUF1Qix5QkFBQTthQUNsRixDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0gsdUJBQUM7SUFBRCxDQUFDLEFBaEJELElBZ0JDO0lBaEJZLDRDQUFnQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7UmVmZXJlbmNlfSBmcm9tICcuLi8uLi9pbXBvcnRzJztcbmltcG9ydCB7UmVmbGVjdGlvbkhvc3R9IGZyb20gJy4uLy4uL3JlZmxlY3Rpb24nO1xuXG5pbXBvcnQge1N0YXRpY0ludGVycHJldGVyfSBmcm9tICcuL2ludGVycHJldGVyJztcbmltcG9ydCB7UmVzb2x2ZWRWYWx1ZX0gZnJvbSAnLi9yZXN1bHQnO1xuXG5leHBvcnQgdHlwZSBGb3JlaWduRnVuY3Rpb25SZXNvbHZlciA9XG4gICAgKG5vZGU6IFJlZmVyZW5jZTx0cy5GdW5jdGlvbkRlY2xhcmF0aW9ufHRzLk1ldGhvZERlY2xhcmF0aW9ufHRzLkZ1bmN0aW9uRXhwcmVzc2lvbj4sXG4gICAgIGFyZ3M6IFJlYWRvbmx5QXJyYXk8dHMuRXhwcmVzc2lvbj4pID0+IHRzLkV4cHJlc3Npb24gfCBudWxsO1xuXG5leHBvcnQgdHlwZSBWaXNpdGVkRmlsZXNDYWxsYmFjayA9IChzZjogdHMuU291cmNlRmlsZSkgPT4gdm9pZDtcblxuZXhwb3J0IGNsYXNzIFBhcnRpYWxFdmFsdWF0b3Ige1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGhvc3Q6IFJlZmxlY3Rpb25Ib3N0LCBwcml2YXRlIGNoZWNrZXI6IHRzLlR5cGVDaGVja2VyKSB7fVxuXG4gIGV2YWx1YXRlKFxuICAgICAgZXhwcjogdHMuRXhwcmVzc2lvbiwgZm9yZWlnbkZ1bmN0aW9uUmVzb2x2ZXI/OiBGb3JlaWduRnVuY3Rpb25SZXNvbHZlcixcbiAgICAgIHZpc2l0ZWRGaWxlc0NiPzogVmlzaXRlZEZpbGVzQ2FsbGJhY2spOiBSZXNvbHZlZFZhbHVlIHtcbiAgICBjb25zdCBpbnRlcnByZXRlciA9IG5ldyBTdGF0aWNJbnRlcnByZXRlcih0aGlzLmhvc3QsIHRoaXMuY2hlY2tlciwgdmlzaXRlZEZpbGVzQ2IpO1xuICAgIGlmICh2aXNpdGVkRmlsZXNDYikge1xuICAgICAgdmlzaXRlZEZpbGVzQ2IoZXhwci5nZXRTb3VyY2VGaWxlKCkpO1xuICAgIH1cbiAgICByZXR1cm4gaW50ZXJwcmV0ZXIudmlzaXQoZXhwciwge1xuICAgICAgYWJzb2x1dGVNb2R1bGVOYW1lOiBudWxsLFxuICAgICAgcmVzb2x1dGlvbkNvbnRleHQ6IGV4cHIuZ2V0U291cmNlRmlsZSgpLmZpbGVOYW1lLFxuICAgICAgc2NvcGU6IG5ldyBNYXA8dHMuUGFyYW1ldGVyRGVjbGFyYXRpb24sIFJlc29sdmVkVmFsdWU+KCksIGZvcmVpZ25GdW5jdGlvblJlc29sdmVyLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy9wYXJ0aWFsX2V2YWx1YXRvci9zcmMvaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBT0gsaUdBQWdEO0lBZWhEO1FBQ0UsMEJBQ1ksSUFBb0IsRUFBVSxPQUF1QixFQUNyRCxpQkFBcUM7WUFEckMsU0FBSSxHQUFKLElBQUksQ0FBZ0I7WUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFnQjtZQUNyRCxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW9CO1FBQUcsQ0FBQztRQUVyRCxtQ0FBUSxHQUFSLFVBQVMsSUFBbUIsRUFBRSx1QkFBaUQ7WUFDN0UsSUFBTSxXQUFXLEdBQUcsSUFBSSwrQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDM0YsT0FBTyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtnQkFDN0IsZUFBZSxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUU7Z0JBQ3JDLGtCQUFrQixFQUFFLElBQUk7Z0JBQ3hCLGlCQUFpQixFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRO2dCQUNoRCxLQUFLLEVBQUUsSUFBSSxHQUFHLEVBQTBDLEVBQUUsdUJBQXVCLHlCQUFBO2FBQ2xGLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDSCx1QkFBQztJQUFELENBQUMsQUFkRCxJQWNDO0lBZFksNENBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtSZWZlcmVuY2V9IGZyb20gJy4uLy4uL2ltcG9ydHMnO1xuaW1wb3J0IHtSZWZsZWN0aW9uSG9zdH0gZnJvbSAnLi4vLi4vcmVmbGVjdGlvbic7XG5cbmltcG9ydCB7U3RhdGljSW50ZXJwcmV0ZXJ9IGZyb20gJy4vaW50ZXJwcmV0ZXInO1xuaW1wb3J0IHtSZXNvbHZlZFZhbHVlfSBmcm9tICcuL3Jlc3VsdCc7XG5cbi8qKlxuICogSW1wbGVtZW50IHRoaXMgaW50ZXJmYWNlIHRvIHJlY29yZCBkZXBlbmRlbmN5IHJlbGF0aW9ucyBiZXR3ZWVuXG4gKiBzb3VyY2UgZmlsZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVwZW5kZW5jeVRyYWNrZXIge1xuICB0cmFja0ZpbGVEZXBlbmRlbmN5KGRlcDogdHMuU291cmNlRmlsZSwgc3JjOiB0cy5Tb3VyY2VGaWxlKTogdm9pZDtcbn1cblxuZXhwb3J0IHR5cGUgRm9yZWlnbkZ1bmN0aW9uUmVzb2x2ZXIgPVxuICAgIChub2RlOiBSZWZlcmVuY2U8dHMuRnVuY3Rpb25EZWNsYXJhdGlvbnx0cy5NZXRob2REZWNsYXJhdGlvbnx0cy5GdW5jdGlvbkV4cHJlc3Npb24+LFxuICAgICBhcmdzOiBSZWFkb25seUFycmF5PHRzLkV4cHJlc3Npb24+KSA9PiB0cy5FeHByZXNzaW9uIHwgbnVsbDtcblxuZXhwb3J0IGNsYXNzIFBhcnRpYWxFdmFsdWF0b3Ige1xuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgaG9zdDogUmVmbGVjdGlvbkhvc3QsIHByaXZhdGUgY2hlY2tlcjogdHMuVHlwZUNoZWNrZXIsXG4gICAgICBwcml2YXRlIGRlcGVuZGVuY3lUcmFja2VyPzogRGVwZW5kZW5jeVRyYWNrZXIpIHt9XG5cbiAgZXZhbHVhdGUoZXhwcjogdHMuRXhwcmVzc2lvbiwgZm9yZWlnbkZ1bmN0aW9uUmVzb2x2ZXI/OiBGb3JlaWduRnVuY3Rpb25SZXNvbHZlcik6IFJlc29sdmVkVmFsdWUge1xuICAgIGNvbnN0IGludGVycHJldGVyID0gbmV3IFN0YXRpY0ludGVycHJldGVyKHRoaXMuaG9zdCwgdGhpcy5jaGVja2VyLCB0aGlzLmRlcGVuZGVuY3lUcmFja2VyKTtcbiAgICByZXR1cm4gaW50ZXJwcmV0ZXIudmlzaXQoZXhwciwge1xuICAgICAgb3JpZ2luYXRpbmdGaWxlOiBleHByLmdldFNvdXJjZUZpbGUoKSxcbiAgICAgIGFic29sdXRlTW9kdWxlTmFtZTogbnVsbCxcbiAgICAgIHJlc29sdXRpb25Db250ZXh0OiBleHByLmdldFNvdXJjZUZpbGUoKS5maWxlTmFtZSxcbiAgICAgIHNjb3BlOiBuZXcgTWFwPHRzLlBhcmFtZXRlckRlY2xhcmF0aW9uLCBSZXNvbHZlZFZhbHVlPigpLCBmb3JlaWduRnVuY3Rpb25SZXNvbHZlcixcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -8,7 +8,7 @@
8
8
  /// <amd-module name="@angular/compiler-cli/src/ngtsc/partial_evaluator/src/interpreter" />
9
9
  import * as ts from 'typescript';
10
10
  import { ReflectionHost } from '../../reflection';
11
- import { ForeignFunctionResolver, VisitedFilesCallback } from './interface';
11
+ import { DependencyTracker, ForeignFunctionResolver } from './interface';
12
12
  import { ResolvedValue } from './result';
13
13
  /**
14
14
  * Tracks the scope of a function body, which includes `ResolvedValue`s for the parameters of that
@@ -16,6 +16,7 @@ import { ResolvedValue } from './result';
16
16
  */
17
17
  declare type Scope = Map<ts.ParameterDeclaration, ResolvedValue>;
18
18
  interface Context {
19
+ originatingFile: ts.SourceFile;
19
20
  /**
20
21
  * The module name (if any) which was used to reach the currently resolving symbols.
21
22
  */
@@ -31,8 +32,8 @@ interface Context {
31
32
  export declare class StaticInterpreter {
32
33
  private host;
33
34
  private checker;
34
- private visitedFilesCb?;
35
- constructor(host: ReflectionHost, checker: ts.TypeChecker, visitedFilesCb?: VisitedFilesCallback | undefined);
35
+ private dependencyTracker?;
36
+ constructor(host: ReflectionHost, checker: ts.TypeChecker, dependencyTracker?: DependencyTracker | undefined);
36
37
  visit(node: ts.Expression, context: Context): ResolvedValue;
37
38
  private visitExpression;
38
39
  private visitArrayLiteralExpression;