refactor(): use const and let instead of var

This commit is contained in:
Joao Dias
2016-11-12 14:08:58 +01:00
committed by Victor Berchet
parent 73593d4bf3
commit 77ee27c59e
435 changed files with 4637 additions and 4663 deletions

View File

@ -33,9 +33,9 @@ export class UpgradeNg1ComponentAdapterBuilder {
$controller: angular.IControllerService = null;
constructor(public name: string) {
var selector = name.replace(
const selector = name.replace(
CAMEL_CASE, (all: any /** TODO #9100 */, next: string) => '-' + next.toLowerCase());
var self = this;
const self = this;
this.type =
Directive({selector: selector, inputs: this.inputsRename, outputs: this.outputsRename})
.Class({
@ -54,14 +54,14 @@ export class UpgradeNg1ComponentAdapterBuilder {
}
extractDirective(injector: angular.IInjectorService): angular.IDirective {
var directives: angular.IDirective[] = injector.get(this.name + 'Directive');
const directives: angular.IDirective[] = injector.get(this.name + 'Directive');
if (directives.length > 1) {
throw new Error('Only support single directive definition for: ' + this.name);
}
var directive = directives[0];
const directive = directives[0];
if (directive.replace) this.notSupported('replace');
if (directive.terminal) this.notSupported('terminal');
var link = directive.link;
const link = directive.link;
if (typeof link == 'object') {
if ((<angular.IDirectivePrePost>link).post) this.notSupported('link.post');
}
@ -73,28 +73,28 @@ export class UpgradeNg1ComponentAdapterBuilder {
}
extractBindings() {
var btcIsObject = typeof this.directive.bindToController === 'object';
const btcIsObject = typeof this.directive.bindToController === 'object';
if (btcIsObject && Object.keys(this.directive.scope).length) {
throw new Error(
`Binding definitions on scope and controller at the same time are not supported.`);
}
var context = (btcIsObject) ? this.directive.bindToController : this.directive.scope;
const context = (btcIsObject) ? this.directive.bindToController : this.directive.scope;
if (typeof context == 'object') {
for (var name in context) {
for (const name in context) {
if ((<any>context).hasOwnProperty(name)) {
var localName = context[name];
var type = localName.charAt(0);
var typeOptions = localName.charAt(1);
let localName = context[name];
const type = localName.charAt(0);
const typeOptions = localName.charAt(1);
localName = typeOptions === '?' ? localName.substr(2) : localName.substr(1);
localName = localName || name;
var outputName = 'output_' + name;
var outputNameRename = outputName + ': ' + name;
var outputNameRenameChange = outputName + ': ' + name + 'Change';
var inputName = 'input_' + name;
var inputNameRename = inputName + ': ' + name;
const outputName = 'output_' + name;
const outputNameRename = outputName + ': ' + name;
const outputNameRenameChange = outputName + ': ' + name + 'Change';
const inputName = 'input_' + name;
const inputNameRename = inputName + ': ' + name;
switch (type) {
case '=':
this.propertyOutputs.push(outputName);
@ -119,7 +119,7 @@ export class UpgradeNg1ComponentAdapterBuilder {
this.propertyMap[outputName] = localName;
break;
default:
var json = JSON.stringify(context);
let json = JSON.stringify(context);
throw new Error(
`Unexpected mapping '${type}' in '${json}' in '${this.name}' directive.`);
}
@ -136,9 +136,9 @@ export class UpgradeNg1ComponentAdapterBuilder {
typeof this.directive.template === 'function' ? this.directive.template() :
this.directive.template);
} else if (this.directive.templateUrl) {
var url = typeof this.directive.templateUrl === 'function' ? this.directive.templateUrl() :
this.directive.templateUrl;
var html = templateCache.get(url);
const url = typeof this.directive.templateUrl === 'function' ? this.directive.templateUrl() :
this.directive.templateUrl;
const html = templateCache.get(url);
if (html !== undefined) {
this.linkFn = compileHtml(html);
} else {
@ -159,7 +159,7 @@ export class UpgradeNg1ComponentAdapterBuilder {
}
return null;
function compileHtml(html: any /** TODO #9100 */): angular.ILinkFn {
var div = document.createElement('div');
const div = document.createElement('div');
div.innerHTML = html;
return compile(div.childNodes);
}
@ -171,18 +171,18 @@ export class UpgradeNg1ComponentAdapterBuilder {
static resolve(
exportedComponents: {[name: string]: UpgradeNg1ComponentAdapterBuilder},
injector: angular.IInjectorService): Promise<angular.ILinkFn[]> {
var promises: Promise<angular.ILinkFn>[] = [];
var compile: angular.ICompileService = injector.get(NG1_COMPILE);
var templateCache: angular.ITemplateCacheService = injector.get(NG1_TEMPLATE_CACHE);
var httpBackend: angular.IHttpBackendService = injector.get(NG1_HTTP_BACKEND);
var $controller: angular.IControllerService = injector.get(NG1_CONTROLLER);
for (var name in exportedComponents) {
const promises: Promise<angular.ILinkFn>[] = [];
const compile: angular.ICompileService = injector.get(NG1_COMPILE);
const templateCache: angular.ITemplateCacheService = injector.get(NG1_TEMPLATE_CACHE);
const httpBackend: angular.IHttpBackendService = injector.get(NG1_HTTP_BACKEND);
const $controller: angular.IControllerService = injector.get(NG1_CONTROLLER);
for (const name in exportedComponents) {
if ((<any>exportedComponents).hasOwnProperty(name)) {
var exportedComponent = exportedComponents[name];
const exportedComponent = exportedComponents[name];
exportedComponent.directive = exportedComponent.extractDirective(injector);
exportedComponent.$controller = $controller;
exportedComponent.extractBindings();
var promise: Promise<angular.ILinkFn> =
const promise: Promise<angular.ILinkFn> =
exportedComponent.compileTemplate(compile, templateCache, httpBackend);
if (promise) promises.push(promise);
}
@ -206,23 +206,23 @@ class UpgradeNg1ComponentAdapter implements OnInit, OnChanges, DoCheck {
this.element = elementRef.nativeElement;
this.componentScope = scope.$new(!!directive.scope);
this.$element = angular.element(this.element);
var controllerType = directive.controller;
const controllerType = directive.controller;
if (directive.bindToController && controllerType) {
this.destinationObj = this.buildController(controllerType);
} else {
this.destinationObj = this.componentScope;
}
for (var i = 0; i < inputs.length; i++) {
for (let i = 0; i < inputs.length; i++) {
(this as any /** TODO #9100 */)[inputs[i]] = null;
}
for (var j = 0; j < outputs.length; j++) {
var emitter = (this as any /** TODO #9100 */)[outputs[j]] = new EventEmitter();
for (let j = 0; j < outputs.length; j++) {
const emitter = (this as any /** TODO #9100 */)[outputs[j]] = new EventEmitter();
this.setComponentProperty(
outputs[j], ((emitter: any /** TODO #9100 */) => (value: any /** TODO #9100 */) =>
emitter.emit(value))(emitter));
}
for (var k = 0; k < propOuts.length; k++) {
for (let k = 0; k < propOuts.length; k++) {
(this as any /** TODO #9100 */)[propOuts[k]] = new EventEmitter();
this.checkLastValues.push(INITIAL_VALUE);
}
@ -232,24 +232,24 @@ class UpgradeNg1ComponentAdapter implements OnInit, OnChanges, DoCheck {
if (!this.directive.bindToController && this.directive.controller) {
this.buildController(this.directive.controller);
}
var link = this.directive.link;
let link = this.directive.link;
if (typeof link == 'object') link = (<angular.IDirectivePrePost>link).pre;
if (link) {
var attrs: angular.IAttributes = NOT_SUPPORTED;
var transcludeFn: angular.ITranscludeFunction = NOT_SUPPORTED;
var linkController = this.resolveRequired(this.$element, this.directive.require);
const attrs: angular.IAttributes = NOT_SUPPORTED;
const transcludeFn: angular.ITranscludeFunction = NOT_SUPPORTED;
const linkController = this.resolveRequired(this.$element, this.directive.require);
(<angular.IDirectiveLinkFn>this.directive.link)(
this.componentScope, this.$element, attrs, linkController, transcludeFn);
}
var childNodes: Node[] = [];
var childNode: any /** TODO #9100 */;
const childNodes: Node[] = [];
let childNode: any /** TODO #9100 */;
while (childNode = this.element.firstChild) {
this.element.removeChild(childNode);
childNodes.push(childNode);
}
this.linkFn(this.componentScope, (clonedElement, scope) => {
for (var i = 0, ii = clonedElement.length; i < ii; i++) {
for (let i = 0, ii = clonedElement.length; i < ii; i++) {
this.element.appendChild(clonedElement[i]);
}
}, {
@ -262,27 +262,27 @@ class UpgradeNg1ComponentAdapter implements OnInit, OnChanges, DoCheck {
}
ngOnChanges(changes: SimpleChanges) {
for (var name in changes) {
for (const name in changes) {
if ((<Object>changes).hasOwnProperty(name)) {
var change: SimpleChange = changes[name];
const change: SimpleChange = changes[name];
this.setComponentProperty(name, change.currentValue);
}
}
}
ngDoCheck(): number {
var count = 0;
var destinationObj = this.destinationObj;
var lastValues = this.checkLastValues;
var checkProperties = this.checkProperties;
for (var i = 0; i < checkProperties.length; i++) {
var value = destinationObj[checkProperties[i]];
var last = lastValues[i];
const count = 0;
const destinationObj = this.destinationObj;
const lastValues = this.checkLastValues;
const checkProperties = this.checkProperties;
for (let i = 0; i < checkProperties.length; i++) {
const value = destinationObj[checkProperties[i]];
const last = lastValues[i];
if (value !== last) {
if (typeof value == 'number' && isNaN(value) && typeof last == 'number' && isNaN(last)) {
// ignore because NaN != NaN
} else {
var eventEmitter: EventEmitter<any> = (this as any /** TODO #9100 */)[this.propOuts[i]];
const eventEmitter: EventEmitter<any> = (this as any /** TODO #9100 */)[this.propOuts[i]];
eventEmitter.emit(lastValues[i] = value);
}
}
@ -295,8 +295,8 @@ class UpgradeNg1ComponentAdapter implements OnInit, OnChanges, DoCheck {
}
private buildController(controllerType: any /** TODO #9100 */) {
var locals = {$scope: this.componentScope, $element: this.$element};
var controller: any =
const locals = {$scope: this.componentScope, $element: this.$element};
const controller: any =
this.$controller(controllerType, locals, null, this.directive.controllerAs);
this.$element.data(controllerKey(this.directive.name), controller);
return controller;
@ -307,11 +307,10 @@ class UpgradeNg1ComponentAdapter implements OnInit, OnChanges, DoCheck {
if (!require) {
return undefined;
} else if (typeof require == 'string') {
var name: string = <string>require;
var isOptional = false;
var startParent = false;
var searchParents = false;
var ch: string;
let name: string = <string>require;
let isOptional = false;
let startParent = false;
let searchParents = false;
if (name.charAt(0) == '?') {
isOptional = true;
name = name.substr(1);
@ -325,16 +324,16 @@ class UpgradeNg1ComponentAdapter implements OnInit, OnChanges, DoCheck {
name = name.substr(1);
}
var key = controllerKey(name);
const key = controllerKey(name);
if (startParent) $element = $element.parent();
var dep = searchParents ? $element.inheritedData(key) : $element.data(key);
const dep = searchParents ? $element.inheritedData(key) : $element.data(key);
if (!dep && !isOptional) {
throw new Error(`Can not locate '${require}' in '${this.directive.name}'.`);
}
return dep;
} else if (require instanceof Array) {
var deps: any[] /** TODO #9100 */ = [];
for (var i = 0; i < require.length; i++) {
const deps: any[] = [];
for (let i = 0; i < require.length; i++) {
deps.push(this.resolveRequired($element, require[i]));
}
return deps;