@angular/compiler-cli 2.2.2 → 2.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +2 -2
- package/index.js +6 -6
- package/index.js.map +1 -1
- package/index.metadata.json +1 -1
- package/package.json +4 -4
- package/src/codegen.d.ts +10 -6
- package/src/codegen.js +75 -27
- package/src/codegen.js.map +1 -1
- package/src/extract_i18n.js +10 -1
- package/src/extract_i18n.js.map +1 -1
- package/src/extractor.d.ts +10 -5
- package/src/extractor.js +53 -10
- package/src/extractor.js.map +1 -1
- package/src/main.js +3 -1
- package/src/main.js.map +1 -1
- package/src/{path_mapped_compiler_host.d.ts → path_mapped_reflector_host.d.ts} +14 -7
- package/src/{path_mapped_compiler_host.js → path_mapped_reflector_host.js} +25 -27
- package/src/path_mapped_reflector_host.js.map +1 -0
- package/src/private_import_core.d.ts +4 -0
- package/src/private_import_core.js +1 -0
- package/src/private_import_core.js.map +1 -1
- package/src/private_import_core.metadata.json +1 -1
- package/src/{compiler_host.d.ts → reflector_host.d.ts} +34 -15
- package/src/reflector_host.js +324 -0
- package/src/reflector_host.js.map +1 -0
- package/src/static_reflection_capabilities.d.ts +29 -0
- package/src/static_reflection_capabilities.js +57 -0
- package/src/static_reflection_capabilities.js.map +1 -0
- package/src/static_reflector.d.ts +82 -0
- package/src/static_reflector.js +601 -0
- package/src/static_reflector.js.map +1 -0
- package/src/codegen.metadata.json +0 -1
- package/src/compiler_host.js +0 -226
- package/src/compiler_host.js.map +0 -1
- package/src/compiler_host.metadata.json +0 -1
- package/src/extractor.metadata.json +0 -1
- package/src/path_mapped_compiler_host.js.map +0 -1
- package/src/path_mapped_compiler_host.metadata.json +0 -1
|
@@ -0,0 +1,601 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google Inc. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
"use strict";
|
|
9
|
+
var __extends = (this && this.__extends) || function (d, b) {
|
|
10
|
+
for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
|
|
11
|
+
function __() { this.constructor = d; }
|
|
12
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
13
|
+
};
|
|
14
|
+
var core_1 = require('@angular/core');
|
|
15
|
+
var SUPPORTED_SCHEMA_VERSION = 1;
|
|
16
|
+
/**
|
|
17
|
+
* A token representing the a reference to a static type.
|
|
18
|
+
*
|
|
19
|
+
* This token is unique for a filePath and name and can be used as a hash table key.
|
|
20
|
+
*/
|
|
21
|
+
var StaticSymbol = (function () {
|
|
22
|
+
function StaticSymbol(filePath, name, members) {
|
|
23
|
+
this.filePath = filePath;
|
|
24
|
+
this.name = name;
|
|
25
|
+
this.members = members;
|
|
26
|
+
}
|
|
27
|
+
return StaticSymbol;
|
|
28
|
+
}());
|
|
29
|
+
exports.StaticSymbol = StaticSymbol;
|
|
30
|
+
/**
|
|
31
|
+
* A static reflector implements enough of the Reflector API that is necessary to compile
|
|
32
|
+
* templates statically.
|
|
33
|
+
*/
|
|
34
|
+
var StaticReflector = (function () {
|
|
35
|
+
function StaticReflector(host) {
|
|
36
|
+
this.host = host;
|
|
37
|
+
this.annotationCache = new Map();
|
|
38
|
+
this.propertyCache = new Map();
|
|
39
|
+
this.parameterCache = new Map();
|
|
40
|
+
this.metadataCache = new Map();
|
|
41
|
+
this.conversionMap = new Map();
|
|
42
|
+
this.initializeConversionMap();
|
|
43
|
+
}
|
|
44
|
+
StaticReflector.prototype.importUri = function (typeOrFunc) {
|
|
45
|
+
var staticSymbol = this.host.findDeclaration(typeOrFunc.filePath, typeOrFunc.name, '');
|
|
46
|
+
return staticSymbol ? staticSymbol.filePath : null;
|
|
47
|
+
};
|
|
48
|
+
StaticReflector.prototype.resolveIdentifier = function (name, moduleUrl, runtime) {
|
|
49
|
+
return this.host.findDeclaration(moduleUrl, name, '');
|
|
50
|
+
};
|
|
51
|
+
StaticReflector.prototype.resolveEnum = function (enumIdentifier, name) {
|
|
52
|
+
var staticSymbol = enumIdentifier;
|
|
53
|
+
return this.host.getStaticSymbol(staticSymbol.filePath, staticSymbol.name, [name]);
|
|
54
|
+
};
|
|
55
|
+
StaticReflector.prototype.annotations = function (type) {
|
|
56
|
+
var annotations = this.annotationCache.get(type);
|
|
57
|
+
if (!annotations) {
|
|
58
|
+
var classMetadata = this.getTypeMetadata(type);
|
|
59
|
+
if (classMetadata['decorators']) {
|
|
60
|
+
annotations = this.simplify(type, classMetadata['decorators']);
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
annotations = [];
|
|
64
|
+
}
|
|
65
|
+
this.annotationCache.set(type, annotations.filter(function (ann) { return !!ann; }));
|
|
66
|
+
}
|
|
67
|
+
return annotations;
|
|
68
|
+
};
|
|
69
|
+
StaticReflector.prototype.propMetadata = function (type) {
|
|
70
|
+
var _this = this;
|
|
71
|
+
var propMetadata = this.propertyCache.get(type);
|
|
72
|
+
if (!propMetadata) {
|
|
73
|
+
var classMetadata = this.getTypeMetadata(type);
|
|
74
|
+
var members = classMetadata ? classMetadata['members'] : {};
|
|
75
|
+
propMetadata = mapStringMap(members, function (propData, propName) {
|
|
76
|
+
var prop = propData
|
|
77
|
+
.find(function (a) { return a['__symbolic'] == 'property' || a['__symbolic'] == 'method'; });
|
|
78
|
+
if (prop && prop['decorators']) {
|
|
79
|
+
return _this.simplify(type, prop['decorators']);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
return [];
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
this.propertyCache.set(type, propMetadata);
|
|
86
|
+
}
|
|
87
|
+
return propMetadata;
|
|
88
|
+
};
|
|
89
|
+
StaticReflector.prototype.parameters = function (type) {
|
|
90
|
+
if (!(type instanceof StaticSymbol)) {
|
|
91
|
+
throw new Error("parameters received " + JSON.stringify(type) + " which is not a StaticSymbol");
|
|
92
|
+
}
|
|
93
|
+
try {
|
|
94
|
+
var parameters_1 = this.parameterCache.get(type);
|
|
95
|
+
if (!parameters_1) {
|
|
96
|
+
var classMetadata = this.getTypeMetadata(type);
|
|
97
|
+
var members = classMetadata ? classMetadata['members'] : null;
|
|
98
|
+
var ctorData = members ? members['__ctor__'] : null;
|
|
99
|
+
if (ctorData) {
|
|
100
|
+
var ctor = ctorData.find(function (a) { return a['__symbolic'] == 'constructor'; });
|
|
101
|
+
var parameterTypes = this.simplify(type, ctor['parameters'] || []);
|
|
102
|
+
var parameterDecorators_1 = this.simplify(type, ctor['parameterDecorators'] || []);
|
|
103
|
+
parameters_1 = [];
|
|
104
|
+
parameterTypes.forEach(function (paramType, index) {
|
|
105
|
+
var nestedResult = [];
|
|
106
|
+
if (paramType) {
|
|
107
|
+
nestedResult.push(paramType);
|
|
108
|
+
}
|
|
109
|
+
var decorators = parameterDecorators_1 ? parameterDecorators_1[index] : null;
|
|
110
|
+
if (decorators) {
|
|
111
|
+
nestedResult.push.apply(nestedResult, decorators);
|
|
112
|
+
}
|
|
113
|
+
parameters_1.push(nestedResult);
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
if (!parameters_1) {
|
|
117
|
+
parameters_1 = [];
|
|
118
|
+
}
|
|
119
|
+
this.parameterCache.set(type, parameters_1);
|
|
120
|
+
}
|
|
121
|
+
return parameters_1;
|
|
122
|
+
}
|
|
123
|
+
catch (e) {
|
|
124
|
+
console.log("Failed on type " + JSON.stringify(type) + " with error " + e);
|
|
125
|
+
throw e;
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
StaticReflector.prototype.hasLifecycleHook = function (type, lcProperty) {
|
|
129
|
+
if (!(type instanceof StaticSymbol)) {
|
|
130
|
+
throw new Error("hasLifecycleHook received " + JSON.stringify(type) + " which is not a StaticSymbol");
|
|
131
|
+
}
|
|
132
|
+
var classMetadata = this.getTypeMetadata(type);
|
|
133
|
+
var members = classMetadata ? classMetadata['members'] : null;
|
|
134
|
+
var member = members && members.hasOwnProperty(lcProperty) ? members[lcProperty] : null;
|
|
135
|
+
return member ? member.some(function (a) { return a['__symbolic'] == 'method'; }) : false;
|
|
136
|
+
};
|
|
137
|
+
StaticReflector.prototype.registerDecoratorOrConstructor = function (type, ctor) {
|
|
138
|
+
this.conversionMap.set(type, function (context, args) { return new (ctor.bind.apply(ctor, [void 0].concat(args)))(); });
|
|
139
|
+
};
|
|
140
|
+
StaticReflector.prototype.registerFunction = function (type, fn) {
|
|
141
|
+
this.conversionMap.set(type, function (context, args) { return fn.apply(undefined, args); });
|
|
142
|
+
};
|
|
143
|
+
StaticReflector.prototype.initializeConversionMap = function () {
|
|
144
|
+
var _a = this.host.angularImportLocations(), coreDecorators = _a.coreDecorators, diDecorators = _a.diDecorators, diMetadata = _a.diMetadata, diOpaqueToken = _a.diOpaqueToken, animationMetadata = _a.animationMetadata, provider = _a.provider;
|
|
145
|
+
this.opaqueToken = this.host.findDeclaration(diOpaqueToken, 'OpaqueToken');
|
|
146
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(diDecorators, 'Host'), core_1.Host);
|
|
147
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(diDecorators, 'Injectable'), core_1.Injectable);
|
|
148
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(diDecorators, 'Self'), core_1.Self);
|
|
149
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(diDecorators, 'SkipSelf'), core_1.SkipSelf);
|
|
150
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(diDecorators, 'Inject'), core_1.Inject);
|
|
151
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(diDecorators, 'Optional'), core_1.Optional);
|
|
152
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'Attribute'), core_1.Attribute);
|
|
153
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'ContentChild'), core_1.ContentChild);
|
|
154
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'ContentChildren'), core_1.ContentChildren);
|
|
155
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'ViewChild'), core_1.ViewChild);
|
|
156
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'ViewChildren'), core_1.ViewChildren);
|
|
157
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'Input'), core_1.Input);
|
|
158
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'Output'), core_1.Output);
|
|
159
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'Pipe'), core_1.Pipe);
|
|
160
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'HostBinding'), core_1.HostBinding);
|
|
161
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'HostListener'), core_1.HostListener);
|
|
162
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'Directive'), core_1.Directive);
|
|
163
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'Component'), core_1.Component);
|
|
164
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(coreDecorators, 'NgModule'), core_1.NgModule);
|
|
165
|
+
// Note: Some metadata classes can be used directly with Provider.deps.
|
|
166
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(diMetadata, 'Host'), core_1.Host);
|
|
167
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(diMetadata, 'Self'), core_1.Self);
|
|
168
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(diMetadata, 'SkipSelf'), core_1.SkipSelf);
|
|
169
|
+
this.registerDecoratorOrConstructor(this.host.findDeclaration(diMetadata, 'Optional'), core_1.Optional);
|
|
170
|
+
this.registerFunction(this.host.findDeclaration(animationMetadata, 'trigger'), core_1.trigger);
|
|
171
|
+
this.registerFunction(this.host.findDeclaration(animationMetadata, 'state'), core_1.state);
|
|
172
|
+
this.registerFunction(this.host.findDeclaration(animationMetadata, 'transition'), core_1.transition);
|
|
173
|
+
this.registerFunction(this.host.findDeclaration(animationMetadata, 'style'), core_1.style);
|
|
174
|
+
this.registerFunction(this.host.findDeclaration(animationMetadata, 'animate'), core_1.animate);
|
|
175
|
+
this.registerFunction(this.host.findDeclaration(animationMetadata, 'keyframes'), core_1.keyframes);
|
|
176
|
+
this.registerFunction(this.host.findDeclaration(animationMetadata, 'sequence'), core_1.sequence);
|
|
177
|
+
this.registerFunction(this.host.findDeclaration(animationMetadata, 'group'), core_1.group);
|
|
178
|
+
};
|
|
179
|
+
/** @internal */
|
|
180
|
+
StaticReflector.prototype.simplify = function (context, value) {
|
|
181
|
+
var _this = this;
|
|
182
|
+
var scope = BindingScope.empty;
|
|
183
|
+
var calling = new Map();
|
|
184
|
+
function simplifyInContext(context, value, depth) {
|
|
185
|
+
function resolveReference(context, expression) {
|
|
186
|
+
var staticSymbol;
|
|
187
|
+
if (expression['module']) {
|
|
188
|
+
staticSymbol = _this.host.findDeclaration(expression['module'], expression['name'], context.filePath);
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
staticSymbol = _this.host.getStaticSymbol(context.filePath, expression['name']);
|
|
192
|
+
}
|
|
193
|
+
return staticSymbol;
|
|
194
|
+
}
|
|
195
|
+
function resolveReferenceValue(staticSymbol) {
|
|
196
|
+
var moduleMetadata = _this.getModuleMetadata(staticSymbol.filePath);
|
|
197
|
+
var declarationValue = moduleMetadata ? moduleMetadata['metadata'][staticSymbol.name] : null;
|
|
198
|
+
return declarationValue;
|
|
199
|
+
}
|
|
200
|
+
function isOpaqueToken(context, value) {
|
|
201
|
+
if (value && value.__symbolic === 'new' && value.expression) {
|
|
202
|
+
var target = value.expression;
|
|
203
|
+
if (target.__symbolic == 'reference') {
|
|
204
|
+
return sameSymbol(resolveReference(context, target), _this.opaqueToken);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
return false;
|
|
208
|
+
}
|
|
209
|
+
function simplifyCall(expression) {
|
|
210
|
+
var callContext = undefined;
|
|
211
|
+
if (expression['__symbolic'] == 'call') {
|
|
212
|
+
var target = expression['expression'];
|
|
213
|
+
var functionSymbol = void 0;
|
|
214
|
+
var targetFunction = void 0;
|
|
215
|
+
if (target) {
|
|
216
|
+
switch (target.__symbolic) {
|
|
217
|
+
case 'reference':
|
|
218
|
+
// Find the function to call.
|
|
219
|
+
callContext = { name: target.name };
|
|
220
|
+
functionSymbol = resolveReference(context, target);
|
|
221
|
+
targetFunction = resolveReferenceValue(functionSymbol);
|
|
222
|
+
break;
|
|
223
|
+
case 'select':
|
|
224
|
+
// Find the static method to call
|
|
225
|
+
if (target.expression.__symbolic == 'reference') {
|
|
226
|
+
functionSymbol = resolveReference(context, target.expression);
|
|
227
|
+
var classData = resolveReferenceValue(functionSymbol);
|
|
228
|
+
if (classData && classData.statics) {
|
|
229
|
+
targetFunction = classData.statics[target.member];
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
break;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
if (targetFunction && targetFunction['__symbolic'] == 'function') {
|
|
236
|
+
if (calling.get(functionSymbol)) {
|
|
237
|
+
throw new Error('Recursion not supported');
|
|
238
|
+
}
|
|
239
|
+
calling.set(functionSymbol, true);
|
|
240
|
+
try {
|
|
241
|
+
var value_1 = targetFunction['value'];
|
|
242
|
+
if (value_1 && (depth != 0 || value_1.__symbolic != 'error')) {
|
|
243
|
+
// Determine the arguments
|
|
244
|
+
var args = (expression['arguments'] || []).map(function (arg) { return simplify(arg); });
|
|
245
|
+
var parameters = targetFunction['parameters'];
|
|
246
|
+
var defaults = targetFunction.defaults;
|
|
247
|
+
if (defaults && defaults.length > args.length) {
|
|
248
|
+
args.push.apply(args, defaults.slice(args.length).map(function (value) { return simplify(value); }));
|
|
249
|
+
}
|
|
250
|
+
var functionScope = BindingScope.build();
|
|
251
|
+
for (var i = 0; i < parameters.length; i++) {
|
|
252
|
+
functionScope.define(parameters[i], args[i]);
|
|
253
|
+
}
|
|
254
|
+
var oldScope = scope;
|
|
255
|
+
var result_1;
|
|
256
|
+
try {
|
|
257
|
+
scope = functionScope.done();
|
|
258
|
+
result_1 = simplifyInContext(functionSymbol, value_1, depth + 1);
|
|
259
|
+
}
|
|
260
|
+
finally {
|
|
261
|
+
scope = oldScope;
|
|
262
|
+
}
|
|
263
|
+
return result_1;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
finally {
|
|
267
|
+
calling.delete(functionSymbol);
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
if (depth === 0) {
|
|
272
|
+
// If depth is 0 we are evaluating the top level expression that is describing element
|
|
273
|
+
// decorator. In this case, it is a decorator we don't understand, such as a custom
|
|
274
|
+
// non-angular decorator, and we should just ignore it.
|
|
275
|
+
return { __symbolic: 'ignore' };
|
|
276
|
+
}
|
|
277
|
+
return simplify({ __symbolic: 'error', message: 'Function call not supported', context: callContext });
|
|
278
|
+
}
|
|
279
|
+
function simplify(expression) {
|
|
280
|
+
if (isPrimitive(expression)) {
|
|
281
|
+
return expression;
|
|
282
|
+
}
|
|
283
|
+
if (expression instanceof Array) {
|
|
284
|
+
var result_2 = [];
|
|
285
|
+
for (var _i = 0, _a = expression; _i < _a.length; _i++) {
|
|
286
|
+
var item = _a[_i];
|
|
287
|
+
// Check for a spread expression
|
|
288
|
+
if (item && item.__symbolic === 'spread') {
|
|
289
|
+
var spreadArray = simplify(item.expression);
|
|
290
|
+
if (Array.isArray(spreadArray)) {
|
|
291
|
+
for (var _b = 0, spreadArray_1 = spreadArray; _b < spreadArray_1.length; _b++) {
|
|
292
|
+
var spreadItem = spreadArray_1[_b];
|
|
293
|
+
result_2.push(spreadItem);
|
|
294
|
+
}
|
|
295
|
+
continue;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
var value_2 = simplify(item);
|
|
299
|
+
if (shouldIgnore(value_2)) {
|
|
300
|
+
continue;
|
|
301
|
+
}
|
|
302
|
+
result_2.push(value_2);
|
|
303
|
+
}
|
|
304
|
+
return result_2;
|
|
305
|
+
}
|
|
306
|
+
if (expression instanceof StaticSymbol) {
|
|
307
|
+
return expression;
|
|
308
|
+
}
|
|
309
|
+
if (expression) {
|
|
310
|
+
if (expression['__symbolic']) {
|
|
311
|
+
var staticSymbol = void 0;
|
|
312
|
+
switch (expression['__symbolic']) {
|
|
313
|
+
case 'binop':
|
|
314
|
+
var left = simplify(expression['left']);
|
|
315
|
+
if (shouldIgnore(left))
|
|
316
|
+
return left;
|
|
317
|
+
var right = simplify(expression['right']);
|
|
318
|
+
if (shouldIgnore(right))
|
|
319
|
+
return right;
|
|
320
|
+
switch (expression['operator']) {
|
|
321
|
+
case '&&':
|
|
322
|
+
return left && right;
|
|
323
|
+
case '||':
|
|
324
|
+
return left || right;
|
|
325
|
+
case '|':
|
|
326
|
+
return left | right;
|
|
327
|
+
case '^':
|
|
328
|
+
return left ^ right;
|
|
329
|
+
case '&':
|
|
330
|
+
return left & right;
|
|
331
|
+
case '==':
|
|
332
|
+
return left == right;
|
|
333
|
+
case '!=':
|
|
334
|
+
return left != right;
|
|
335
|
+
case '===':
|
|
336
|
+
return left === right;
|
|
337
|
+
case '!==':
|
|
338
|
+
return left !== right;
|
|
339
|
+
case '<':
|
|
340
|
+
return left < right;
|
|
341
|
+
case '>':
|
|
342
|
+
return left > right;
|
|
343
|
+
case '<=':
|
|
344
|
+
return left <= right;
|
|
345
|
+
case '>=':
|
|
346
|
+
return left >= right;
|
|
347
|
+
case '<<':
|
|
348
|
+
return left << right;
|
|
349
|
+
case '>>':
|
|
350
|
+
return left >> right;
|
|
351
|
+
case '+':
|
|
352
|
+
return left + right;
|
|
353
|
+
case '-':
|
|
354
|
+
return left - right;
|
|
355
|
+
case '*':
|
|
356
|
+
return left * right;
|
|
357
|
+
case '/':
|
|
358
|
+
return left / right;
|
|
359
|
+
case '%':
|
|
360
|
+
return left % right;
|
|
361
|
+
}
|
|
362
|
+
return null;
|
|
363
|
+
case 'if':
|
|
364
|
+
var condition = simplify(expression['condition']);
|
|
365
|
+
return condition ? simplify(expression['thenExpression']) :
|
|
366
|
+
simplify(expression['elseExpression']);
|
|
367
|
+
case 'pre':
|
|
368
|
+
var operand = simplify(expression['operand']);
|
|
369
|
+
if (shouldIgnore(operand))
|
|
370
|
+
return operand;
|
|
371
|
+
switch (expression['operator']) {
|
|
372
|
+
case '+':
|
|
373
|
+
return operand;
|
|
374
|
+
case '-':
|
|
375
|
+
return -operand;
|
|
376
|
+
case '!':
|
|
377
|
+
return !operand;
|
|
378
|
+
case '~':
|
|
379
|
+
return ~operand;
|
|
380
|
+
}
|
|
381
|
+
return null;
|
|
382
|
+
case 'index':
|
|
383
|
+
var indexTarget = simplify(expression['expression']);
|
|
384
|
+
var index = simplify(expression['index']);
|
|
385
|
+
if (indexTarget && isPrimitive(index))
|
|
386
|
+
return indexTarget[index];
|
|
387
|
+
return null;
|
|
388
|
+
case 'select':
|
|
389
|
+
var selectTarget = simplify(expression['expression']);
|
|
390
|
+
if (selectTarget instanceof StaticSymbol) {
|
|
391
|
+
// Access to a static instance variable
|
|
392
|
+
var declarationValue_1 = resolveReferenceValue(selectTarget);
|
|
393
|
+
if (declarationValue_1 && declarationValue_1.statics) {
|
|
394
|
+
selectTarget = declarationValue_1.statics;
|
|
395
|
+
}
|
|
396
|
+
else {
|
|
397
|
+
var member_1 = expression['member'];
|
|
398
|
+
var members = selectTarget.members ?
|
|
399
|
+
selectTarget.members.concat(member_1) :
|
|
400
|
+
[member_1];
|
|
401
|
+
return _this.host.getStaticSymbol(selectTarget.filePath, selectTarget.name, members);
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
var member = simplify(expression['member']);
|
|
405
|
+
if (selectTarget && isPrimitive(member))
|
|
406
|
+
return simplify(selectTarget[member]);
|
|
407
|
+
return null;
|
|
408
|
+
case 'reference':
|
|
409
|
+
if (!expression.module) {
|
|
410
|
+
var name_1 = expression['name'];
|
|
411
|
+
var localValue = scope.resolve(name_1);
|
|
412
|
+
if (localValue != BindingScope.missing) {
|
|
413
|
+
return localValue;
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
staticSymbol = resolveReference(context, expression);
|
|
417
|
+
var result_3 = staticSymbol;
|
|
418
|
+
var declarationValue = resolveReferenceValue(result_3);
|
|
419
|
+
if (declarationValue) {
|
|
420
|
+
if (isOpaqueToken(staticSymbol, declarationValue)) {
|
|
421
|
+
// If the referenced symbol is initalized by a new OpaqueToken we can keep the
|
|
422
|
+
// reference to the symbol.
|
|
423
|
+
return staticSymbol;
|
|
424
|
+
}
|
|
425
|
+
result_3 = simplifyInContext(staticSymbol, declarationValue, depth + 1);
|
|
426
|
+
}
|
|
427
|
+
return result_3;
|
|
428
|
+
case 'class':
|
|
429
|
+
return context;
|
|
430
|
+
case 'function':
|
|
431
|
+
return context;
|
|
432
|
+
case 'new':
|
|
433
|
+
case 'call':
|
|
434
|
+
// Determine if the function is a built-in conversion
|
|
435
|
+
var target = expression['expression'];
|
|
436
|
+
if (target['module']) {
|
|
437
|
+
staticSymbol = _this.host.findDeclaration(target['module'], target['name'], context.filePath);
|
|
438
|
+
}
|
|
439
|
+
else {
|
|
440
|
+
staticSymbol = _this.host.getStaticSymbol(context.filePath, target['name']);
|
|
441
|
+
}
|
|
442
|
+
var converter = _this.conversionMap.get(staticSymbol);
|
|
443
|
+
if (converter) {
|
|
444
|
+
var args = expression['arguments'];
|
|
445
|
+
if (!args) {
|
|
446
|
+
args = [];
|
|
447
|
+
}
|
|
448
|
+
return converter(context, args.map(function (arg) { return simplifyInContext(context, arg, depth + 1); }));
|
|
449
|
+
}
|
|
450
|
+
// Determine if the function is one we can simplify.
|
|
451
|
+
return simplifyCall(expression);
|
|
452
|
+
case 'error':
|
|
453
|
+
var message = produceErrorMessage(expression);
|
|
454
|
+
if (expression['line']) {
|
|
455
|
+
message =
|
|
456
|
+
message + " (position " + (expression['line'] + 1) + ":" + (expression['character'] + 1) + " in the original .ts file)";
|
|
457
|
+
throw positionalError(message, context.filePath, expression['line'], expression['character']);
|
|
458
|
+
}
|
|
459
|
+
throw new Error(message);
|
|
460
|
+
}
|
|
461
|
+
return null;
|
|
462
|
+
}
|
|
463
|
+
return mapStringMap(expression, function (value, name) { return simplify(value); });
|
|
464
|
+
}
|
|
465
|
+
return null;
|
|
466
|
+
}
|
|
467
|
+
try {
|
|
468
|
+
return simplify(value);
|
|
469
|
+
}
|
|
470
|
+
catch (e) {
|
|
471
|
+
var message = e.message + ", resolving symbol " + context.name + " in " + context.filePath;
|
|
472
|
+
if (e.fileName) {
|
|
473
|
+
throw positionalError(message, e.fileName, e.line, e.column);
|
|
474
|
+
}
|
|
475
|
+
throw new Error(message);
|
|
476
|
+
}
|
|
477
|
+
}
|
|
478
|
+
var result = simplifyInContext(context, value, 0);
|
|
479
|
+
if (shouldIgnore(result)) {
|
|
480
|
+
return undefined;
|
|
481
|
+
}
|
|
482
|
+
return result;
|
|
483
|
+
};
|
|
484
|
+
/**
|
|
485
|
+
* @param module an absolute path to a module file.
|
|
486
|
+
*/
|
|
487
|
+
StaticReflector.prototype.getModuleMetadata = function (module) {
|
|
488
|
+
var moduleMetadata = this.metadataCache.get(module);
|
|
489
|
+
if (!moduleMetadata) {
|
|
490
|
+
moduleMetadata = this.host.getMetadataFor(module);
|
|
491
|
+
if (Array.isArray(moduleMetadata)) {
|
|
492
|
+
moduleMetadata = moduleMetadata.find(function (md) { return md['version'] === SUPPORTED_SCHEMA_VERSION; }) ||
|
|
493
|
+
moduleMetadata[0];
|
|
494
|
+
}
|
|
495
|
+
if (!moduleMetadata) {
|
|
496
|
+
moduleMetadata =
|
|
497
|
+
{ __symbolic: 'module', version: SUPPORTED_SCHEMA_VERSION, module: module, metadata: {} };
|
|
498
|
+
}
|
|
499
|
+
if (moduleMetadata['version'] != SUPPORTED_SCHEMA_VERSION) {
|
|
500
|
+
throw new Error("Metadata version mismatch for module " + module + ", found version " + moduleMetadata['version'] + ", expected " + SUPPORTED_SCHEMA_VERSION);
|
|
501
|
+
}
|
|
502
|
+
this.metadataCache.set(module, moduleMetadata);
|
|
503
|
+
}
|
|
504
|
+
return moduleMetadata;
|
|
505
|
+
};
|
|
506
|
+
StaticReflector.prototype.getTypeMetadata = function (type) {
|
|
507
|
+
var moduleMetadata = this.getModuleMetadata(type.filePath);
|
|
508
|
+
return moduleMetadata['metadata'][type.name] || { __symbolic: 'class' };
|
|
509
|
+
};
|
|
510
|
+
return StaticReflector;
|
|
511
|
+
}());
|
|
512
|
+
exports.StaticReflector = StaticReflector;
|
|
513
|
+
function expandedMessage(error) {
|
|
514
|
+
switch (error.message) {
|
|
515
|
+
case 'Reference to non-exported class':
|
|
516
|
+
if (error.context && error.context.className) {
|
|
517
|
+
return "Reference to a non-exported class " + error.context.className + ". Consider exporting the class";
|
|
518
|
+
}
|
|
519
|
+
break;
|
|
520
|
+
case 'Variable not initialized':
|
|
521
|
+
return 'Only initialized variables and constants can be referenced because the value of this variable is needed by the template compiler';
|
|
522
|
+
case 'Destructuring not supported':
|
|
523
|
+
return 'Referencing an exported destructured variable or constant is not supported by the template compiler. Consider simplifying this to avoid destructuring';
|
|
524
|
+
case 'Could not resolve type':
|
|
525
|
+
if (error.context && error.context.typeName) {
|
|
526
|
+
return "Could not resolve type " + error.context.typeName;
|
|
527
|
+
}
|
|
528
|
+
break;
|
|
529
|
+
case 'Function call not supported':
|
|
530
|
+
var prefix = error.context && error.context.name ? "Calling function '" + error.context.name + "', f" : 'F';
|
|
531
|
+
return prefix +
|
|
532
|
+
'unction calls are not supported. Consider replacing the function or lambda with a reference to an exported function';
|
|
533
|
+
case 'Reference to a local symbol':
|
|
534
|
+
if (error.context && error.context.name) {
|
|
535
|
+
return "Reference to a local (non-exported) symbol '" + error.context.name + "'. Consider exporting the symbol";
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
return error.message;
|
|
539
|
+
}
|
|
540
|
+
function produceErrorMessage(error) {
|
|
541
|
+
return "Error encountered resolving symbol values statically. " + expandedMessage(error);
|
|
542
|
+
}
|
|
543
|
+
function mapStringMap(input, transform) {
|
|
544
|
+
if (!input)
|
|
545
|
+
return {};
|
|
546
|
+
var result = {};
|
|
547
|
+
Object.keys(input).forEach(function (key) {
|
|
548
|
+
var value = transform(input[key], key);
|
|
549
|
+
if (!shouldIgnore(value)) {
|
|
550
|
+
result[key] = value;
|
|
551
|
+
}
|
|
552
|
+
});
|
|
553
|
+
return result;
|
|
554
|
+
}
|
|
555
|
+
function isPrimitive(o) {
|
|
556
|
+
return o === null || (typeof o !== 'function' && typeof o !== 'object');
|
|
557
|
+
}
|
|
558
|
+
var BindingScope = (function () {
|
|
559
|
+
function BindingScope() {
|
|
560
|
+
}
|
|
561
|
+
BindingScope.build = function () {
|
|
562
|
+
var current = new Map();
|
|
563
|
+
return {
|
|
564
|
+
define: function (name, value) {
|
|
565
|
+
current.set(name, value);
|
|
566
|
+
return this;
|
|
567
|
+
},
|
|
568
|
+
done: function () {
|
|
569
|
+
return current.size > 0 ? new PopulatedScope(current) : BindingScope.empty;
|
|
570
|
+
}
|
|
571
|
+
};
|
|
572
|
+
};
|
|
573
|
+
BindingScope.missing = {};
|
|
574
|
+
BindingScope.empty = { resolve: function (name) { return BindingScope.missing; } };
|
|
575
|
+
return BindingScope;
|
|
576
|
+
}());
|
|
577
|
+
var PopulatedScope = (function (_super) {
|
|
578
|
+
__extends(PopulatedScope, _super);
|
|
579
|
+
function PopulatedScope(bindings) {
|
|
580
|
+
_super.call(this);
|
|
581
|
+
this.bindings = bindings;
|
|
582
|
+
}
|
|
583
|
+
PopulatedScope.prototype.resolve = function (name) {
|
|
584
|
+
return this.bindings.has(name) ? this.bindings.get(name) : BindingScope.missing;
|
|
585
|
+
};
|
|
586
|
+
return PopulatedScope;
|
|
587
|
+
}(BindingScope));
|
|
588
|
+
function sameSymbol(a, b) {
|
|
589
|
+
return a === b || (a.name == b.name && a.filePath == b.filePath);
|
|
590
|
+
}
|
|
591
|
+
function shouldIgnore(value) {
|
|
592
|
+
return value && value.__symbolic == 'ignore';
|
|
593
|
+
}
|
|
594
|
+
function positionalError(message, fileName, line, column) {
|
|
595
|
+
var result = new Error(message);
|
|
596
|
+
result.fileName = fileName;
|
|
597
|
+
result.line = line;
|
|
598
|
+
result.column = column;
|
|
599
|
+
return result;
|
|
600
|
+
}
|
|
601
|
+
//# sourceMappingURL=static_reflector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"static_reflector.js","sourceRoot":"/Users/vsavkin/projects/angular/modules/@angular/compiler-cli/","sources":["src/static_reflector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"__symbolic":"module","version":2,"metadata":{"CodeGenerator":{"__symbolic":"class"},"excludeFilePattern":{"__symbolic":"function","parameters":["options"],"value":{"__symbolic":"if","condition":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"options"},"member":"generateCodeForLibraries"},"right":false},"thenExpression":{"__symbolic":"error","message":"Reference to a local symbol","line":24,"character":6,"context":{"name":"GENERATED_OR_DTS_FILES"}},"elseExpression":{"__symbolic":"error","message":"Reference to a local symbol","line":23,"character":6,"context":{"name":"GENERATED_FILES"}}}}}}
|